js的优雅很大程序要归功于程序中常见的构造块(Object,Function及Array)的简明的字面量语法。字面量是一种表示数组的优雅方法。
var
a=[1,2,3,5,7,8];
也可以使用构造函数来替代
var
a=
new
Array(1,2,3,5,7,8);
由于Array构造函数存在一些微妙的问题。当你使用时,确保别人没有重新包装过Array变量。
function f(Array){
return new Array(1,2,3,4,5);
}
f(String);//String {0: "1", length: 1, [[PrimitiveValue]]: "1"}
还必须确保没有修改过全局的Array变量
Array=String;
new Array(1,2,3,4,5);//String {0: "1", length: 1, [[PrimitiveValue]]: "1"}
总结:
1.如果数组构造函数的第一个参数是数字则数组的构造函数行为是不同的
2.使用数组字面量替代数组构造函数