这段代码不应该输出1吗,为什么输出undefined?十分感谢

varuser={
count:1,
getCount:function(){
returnthis.count;
}
}
varfunc=user.getCount
console.log(func())
qq_遁去的一_1
浏览 415回答 2
2回答

达令说

this指向变了user.getCount()这里的this指向的user这个对象但是,当你将他赋值给一个变量执行func()的时候,在浏览器环境相当于window.func()

哔哔one

看清楚调用时。user.getCount传递是引用传递。实际上func=function(){returnthis.count;}此时再调用,则this指向全局window
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript