在线阅读文档,我对如何在一行上正确定义多个JavaScript变量感到困惑.
如果我想压缩以下代码,那么在一行中定义多个javascript变量的JavaScript"严格"方法是什么?
var a = 0;
var b = 0;
Run Code Online (Sandbox Code Playgroud)
是吗:
var a = b = 0;
Run Code Online (Sandbox Code Playgroud)
要么
var a = var b = 0;
Run Code Online (Sandbox Code Playgroud)
等等...
我在引用JavaScript的文档var hoisting
,在一节中我发现了几个变量的初始化,下面给出了一个例子.
var x = 0;
function f(){
var x = y = 1;
}
f();
console.log(x, y); // outputs 0, 1
// x is the global one as expected
// y leaked outside of the function, though!
Run Code Online (Sandbox Code Playgroud)
在哪里我假设得到例外Uncaught Reference Error: y is not defined
.但它没有发生,因为泄露的范围,它正在显示0,1
.
我能否知道为什么会发生这种情况以及是什么导致这种情况发生的.最后任何与性能相关的问题