我无法理解自动全局背后的想法。我正在阅读以下内容: https://www.w3schools.com/js/js_scope.asp
https://www.w3schools.com/js/tryit.asp?filename=tryjs_local_global
调用函数 myFunction()。如果我删除此调用,它不会显示任何内容。我不明白为什么需要调用 myFunction() 才能使 myFunction() 中未声明的变量自动成为全局变量。看起来不是那么直观。
最佳答案
表达
var varName = 'value';
使用 var varName
声明变量,然后使用 = 'value'
为其分配值“value”
表达式
varName = 'value';
只是将值'value'
分配给之前应该声明的变量'varName'
所以
function a() {
var varName = 'a'
}
在本地声明变量varName
并使用'a'
启动它
但是
function b() {
varName = 'b'
}
只需为变量varName
分配值'b'
。但变量 varName
需要在 paren 全局范围内声明。
关于javascript - 请解释一下javascript中的自动全局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53330616/