gpt4 book ai didi

javascript - Firebug 控制台窗口范围。为什么 "this"不总是相同的?

转载 作者:数据小太阳 更新时间:2023-10-29 05:17:08 27 4
gpt4 key购买 nike

Firebug 控制台作用域。为什么“这个”不总是一样的?不应该一直是“window”吗?

最佳答案

控制台中this的值将与当前正在执行的代码中this的值相同。考虑:-

function outer()
{
// this is window

var x = {n:12};

var fn = function()
{
// this is object {n:12}

alert(this.n);
}

fn.call(x);
}

...

<img src="thing.gif" onclick="outer()" />

如果你在 x = {n:12} 行打断点,切换到控制台你会发现 this 是窗口。但是,当您进入 alert 行时,控制台中的 thisx 变量持有的对象。 IOW 在执行上下文和控制台中的 this 之间没有区别。因此,您可以在调试时使用控制台调整变量和属性的值。

关于javascript - Firebug 控制台窗口范围。为什么 "this"不总是相同的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1803660/

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