分配

要为先前声明的变量赋值,请使用赋值运算符 =

a = 6;
b = "Foo";

作为独立声明和赋值的替代方法,可以在一个语句中执行这两个步骤:

var a = 6;
let b = "Foo";

在这种语法中,可以在没有关键字的情况下声明全局变量; 如果要声明一个裸变量而没有紧接着后的赋值,则解释器将无法将全局声明 a; 与对变量 a; 的引用区分开来。

c = 5;
c = "Now the value is a String.";
myNewGlobal;    // ReferenceError

但请注意,通常不鼓励使用上述语法,并且不符合严格模式。这是为了避免程序员无意中从他们的语句中删除 letvar 关键字的情况,意外地在全局命名空间中创建变量而没有意识到它。这会污染全局命名空间并与库冲突以及脚本的正常运行。因此,应该在窗口对象的上下文中使用 var 关键字声明和初始化全局变量,以便明确声明 intent。

另外,通过用逗号分隔每个声明(和可选的值赋值),可以一次声明几个变量。使用此语法,var 和 let 关键字只需在每个语句的开头使用一次。

globalA = "1", globalB = "2";
let x, y = 5;
var person = 'John Doe',
    foo,
    age = 14,
    date = new Date(); 

请注意,在前面的代码片段中,声明和赋值表达式的发生顺序(var a, b, c = 2, d;)无关紧要。你可以自由地混合两者。

函数声明也有效地创建变量。