gpt4 book ai didi

javascript - javascript变量的不同行为

转载 作者:行者123 更新时间:2023-11-30 13:17:22 25 4
gpt4 key购买 nike

我检查了 javascript 中未定义/未声明变量的不同行为。例如:

var obj = {};
console.log(x);//Error
console.debug(obj.x) ;//undefined

我的问题是,虽然 c 和 obj.x 都没有声明或定义,但为什么我会出现差异行为?我错过了什么吗?我应该如何跟踪哪个变量已经存在或不存在?

最佳答案

你不能引用一个未声明的变量而不是一个错误,除非你在非严格模式下分配它然后它变成一个隐式全局变量。不过在严格模式下仍然出错。

尝试访问对象属性与尝试访问变量不同,尽管您可以从 window 访问全局变量:

x; //referenceerror
window.x; //undefined, no reference error


在这种情况下,您需要使用 window.xx 例如:

var x = 5;

(function(){
var x = 3;


x === 3; //We cannot access the 5
window.x === 5 //Only window.x will do it here

})()​

关于javascript - javascript变量的不同行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11574039/

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