为什么打印 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();
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
最后对象志向window,window.scope,返回的才是undefined
this指向问题
JS函数不同执行环境下的this指向
首先,这段代码打印出来的应该是global不是undefined,然后你这种写法inner是不可能通过this.scope来调用的,剩下的就去看看this指向吧
var scope = 'global';
function log() {
}
var obj = {
};
obj.do();