gpt4 book ai didi

javascript - 在Javascript中使用var和不使用var有什么区别

转载 作者:行者123 更新时间:2023-11-28 09:10:59 24 4
gpt4 key购买 nike

var in_window = 'a' in window;
alert(in_window);
var a = 1;
//a = 1;

如果我使用var申报a ,然后in_window将是true 。但是,如果我不使用var申报a ,然后in_window将是false

使用 var 到底有什么区别?并且不使用 var在这里?

此代码不在函数内部。在我看来,无论是否使用var,我都认为a是一个全局变量。但为什么in_window的值不一样。

最佳答案

本质上,如果您使用 var,它会在您的本地范围内创建一个变量。如果不这样做,它将在全局范围内创建它。另外,如果您使用 var,它会将定义“提升”到函数的顶部。例如:

var a = 1;

function b() {
alert(a); //alerts 1 (global)
a = 2; //global is now 2
alert(a); //alerts 2
}

function c() {
alert(a); //alerts undefined, var a got hoisted to the top
var a = 3; //local = 3
alert(a); //alerts 3
}

b();
c();
alert(a); //alerts 2 (global);

关于javascript - 在Javascript中使用var和不使用var有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16329300/

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