如果重新声明 JavaScript 变量,该变量的值不会丢失: 在以下两条语句执行后,变量 carname 的值依然是 "Volvo": var carname="Volvo"; var carname; JavaScript 数组 下面的代码创建名为 cars 的数组: var cars=new Array(); cars[0]="Saab"; cars[1]="Volvo"; cars[2]="BMW"; 或者 (condensed array): var cars=new Array("Saab","Volvo","BMW"); 或者 (literal array): 实例 var cars=["Saab","Volvo","BMW"]; JavaScript 对象 对象由花括号分隔。在括号内部,对象的属性以名称和值对的形式 (name : value) 来定义。属性由逗号分隔: var person={firstname:"John", lastname:"Doe", id:5566}; 上面例子中的对象 (person) 有三个属性:firstname、lastname 以及 id。 空格和折行无关紧要。声明可横跨多行: var person={ firstname : "John", lastname : "Doe", id : 5566 }; 对象属性有两种寻址方式: 实例 name=person.lastname; name=person["lastname"]; Undefined 和 Null Undefined 这个值表示变量不含有值。 可以通过将变量的值设置为 null 来清空变量。 局部 JavaScript 变量 在 JavaScript 函数内部声明的变量(使用 var)是局部变量,所以只能在函数内部访问它。(该变量的作用域是局部的)。 您可以在不同的函数中使用名称相同的局部变量,因为只有声明过该变量的函数才能识别出该变量。 只要函数运行完毕,本地变量就会被删除。 全局 JavaScript 变量 在函数外声明的变量是全局变量,网页上的所有脚本和函数都能访问它。 JavaScript 变量的生存期 JavaScript 变量的生命期从它们被声明的时间开始。 局部变量会在函数运行以后被删除。 全局变量会在页面关闭后被删除。 向未声明的 JavaScript 变量分配值 如果您把值赋给尚未声明的变量,该变量将被自动作为全局变量声明。 这条语句: carname="Volvo"; 将声明一个全局变量 carname,即使它在函数内执行。 var x = "John"; var y = new String("John"); (x === y) // 结果为 false,因为 x 是字符串,y 是对象 尝试一下 ? === 为绝对相等,即数据类型与值都必须相等