gpt4 book ai didi

javascript - 这有什么意义呢?引擎故障还是什么?

转载 作者:行者123 更新时间:2023-12-02 20:27:10 25 4
gpt4 key购买 nike

Possible Duplicate:
Javascript scoping variables theory

大家好,

我想问一些奇怪的事情。这是代码。

var a = "defined";function f() {   alert(a);   var a = 5;}f();

警报“未定义”

谁能解释一下为什么我会变得“未定义”。

法提赫..

最佳答案

我想这就是所谓的JavaScript Hoisting。观看此视频以了解有关该问题的更多信息及其解决方案:

http://net.tutsplus.com/tutorials/javascript-ajax/quick-tip-javascript-hoisting-explained/

要使其正常工作,您必须删除 var 关键字形式变量 a:

var a = "defined";
function f() {
alert(a);
a = 5;
}
f();

所以基本上,这是一个变量范围问题。删除 var 关键字的行为使变量全局可用。因此,这次没有出现错误。

关于javascript - 这有什么意义呢?引擎故障还是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4666819/

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