为什么打印 undefined?怎么才能让这段代码分别打印global,obj和inner
var scope = 'global'; function log() { console.log(this.scope) } var obj = { scope: 'obj', do: function () { var scope = 'inner'; log() } }; obj.do();
最后对象志向window,window.scope,返回的才是undefined
雷雷
this指向问题JS函数不同执行环境下的this指向
首先,这段代码打印出来的应该是global不是undefined,然后你这种写法inner是不可能通过this.scope来调用的,剩下的就去看看this指向吧
var 范围 = '全局';
函数日志() {
}
var obj = {
};
obj.do();
最后对象志向window,window.scope,返回的才是undefined
雷雷
this指向问题
JS函数不同执行环境下的this指向
首先,这段代码打印出来的应该是global不是undefined,然后你这种写法inner是不可能通过this.scope来调用的,剩下的就去看看this指向吧
var 范围 = '全局';
函数日志() {
雷雷}
var obj = {
雷雷};
obj.do();