gpt4 book ai didi

JavaScript 全局对象?

转载 作者:搜寻专家 更新时间:2023-11-01 04:51:06 24 4
gpt4 key购买 nike

“this”的值是指全局对象还是下面程序中的对象“o”?

更重要的是,我可以运行什么代码来测试“this”的引用是什么?

function F() { 
function C() {
return this;
}
return C();
}

var o = new F();

最佳答案

它指的是全局对象(window)。

编辑:实际上,它会同时引用全局对象 o,因为它们是相同的。 o 将引用从 F() 返回的对象,这是从 C() 返回的对象,它是 窗口 对象 ;)

您可以调用 console.log(this) 来找出它指的是哪个对象。它应该在控制台上为您提供该对象的所有方法的列表,您应该能够从中推断出它是哪个对象。
要在 Firefox 中运行,您需要 Firebug。不知道 IE。

更新:

@Anurag already showed you how to explicitly set this .如果您只想引用更高范围的 this,则必须将其显式分配给变量。示例:

function F() {
var that = this;
function C() {
console.log(that);
}
C();
}

关于JavaScript 全局对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5374912/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com