很是生硬地了解一波函数调用,各种给的解释都是大同小异,也许,我理解的函数调用是对this的初始化,不同的调用方式,this的指向也是不同。
1. 函数调用模式
function foo () { }
var func = function () { };
foo(); func(); (function(){})();
this的含义:在函数中this表示全局对象,在浏览器中是window。
2. 方法调用模式
function f( ) {
this.method = function () { };
}
var o = {
method: function( ) { };
}
this的含义:这个依附的对象。
3. 构造器调用模式
补充:
1. 默认return this
2.return 只要是基本类型都是无效的,都会return this;
创建对象的模式:
4. 上下文调用模式
网友评论