this 的指向

函数的this指向遵循一个基本原则:谁调用的函数,函数的this就指向谁,否则指向全局
var name="李四"
var a = {
name: "张三",
say: function () {
return this.name;
}
}
a.say()
console.log(a.say()); //张三
//这里调用say(),里面的this指的就是对象a,函数调用者,而对象a的属性name的值为a,所以这里返回的就是"张三"

    var f = a.say
    f();
    console.log(f());//李四

//这里的f()的调用的默认指的是window,而声明的变量name="李四",是挂在window上的,所以这里的this.name返回的值就是"李四"

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容