"use strict":为多个变量赋值

Vai*_*y07 9 javascript variables var

"use strict";javascript中还有其他方法可以将值初始化为多个变量吗?因为这样做:

var x = y = 14;
Run Code Online (Sandbox Code Playgroud)

会导致错误: Uncaught ReferenceError: y is not defined

在这里得到我的参考:

在Javascript中将多个变量设置为相同的值

sfl*_*che 21

有一些副作用var x = y = 14;是为什么在严格模式下不允许它.即,y成为全局变量.

当你说

var x = y = 14;
Run Code Online (Sandbox Code Playgroud)

它相当于

var x;
y = 14;
x = y;
Run Code Online (Sandbox Code Playgroud)

其中x声明为局部变量并y创建为全局变量.

有关使用var声明变量的更多信息,请参阅此问题.此外,值得注意的是,ES6正在引入支持块级别范围的关键字let,与存在的功能级别范围相比var.

最后,如果要为两个变量分配值,则可以执行以下任何操作

var x, y;
x = y = 14;

var x = 14,
    y = x;

var x = 14,
    y = 14;

var x = 14;
var y = 14;
Run Code Online (Sandbox Code Playgroud)


Nie*_*sol 7

是的 - 不要混合声明和作业.

var x, y;
x = y = 14;
Run Code Online (Sandbox Code Playgroud)