企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
看以下的代码,执行的结果是神马? ~~~ var fullname = 'Gudi'; var obj = { fullname: 'Peter', prop: { fullname: 'Mary', getFullname: function() { return this.fullname; } } }; console.log(obj.prop.getFullname()); var test = obj.prop.getFullname; console.log(test()); ~~~ 结果是: ~~~ Mary Gudi ~~~ this的指向不取决于如何调用,而是取决于谁去调用,也就是上下文是谁。 obj.prop.getFullname()调用的是prop对象内部的函数,因此this指向的就是这个prop对象。 var test = obj.prop.getFullname 是将这个方法赋值给了test变量,这个test变量的上下文是window,所以this.fullname指的就是Gudi **你明白了吗?**