选出下列打印值为“test”的项
区块链毕设网qklbishe.com为您提供问题的解答
选出下列打印值为“test”的项
A.在js的语法规则中,如果一个对象在方法,则该方法this指向当前对象。若方法中再次包含函数方法,则该函数指向全局。不能获取到本对象中的属性。
getAFunc: function() { console.log(this); //test对象 return function() { console.log(this); //window对象 return this.a; }; } }; console.log(test.getAFunc()()); //window
可以通过如下几种办法来解决此问题:
(1)定义变量,保存对象this,也就是这里的B选项
(2)通过bind/call/apply方法改变函数this指向
(3)通过箭头函数的方式,箭头函数具有默认指向父级调用对象obj的特点,就是这里的C选项
D.嵌套箭头函数this指向包含他的函数,而这个函数又是箭头函数,指向全局window
编辑于 2022-04-29 17:09:58
以上就是关于问题选出下列打印值为“test”的项的答案
欢迎关注区块链毕设网-
专业区块链毕业设计成品源码,定制。
区块链NFT链游项目方科学家脚本开发培训