我在这里不明白var a = [], i
。如何将a
声明为数组和我的类型是什么?
// Source: Javascript: The Good Parts, p. 63
Array.dim = function (dimension, initial) {
var a = [], i;
for(i = 0; i< dimension; i +=1)
{
a[i] = initial;
}
return a;
}
答案 0 :(得分:3)
它意味着声明两个(单独) - 不声明它们是相等的
同样的事情:
var a = [];
var i;
答案 1 :(得分:2)
以下代码:
var a = [], i;
完全与此代码相同:
var a = [];
var i;
这意味着:
a
是一个空数组i
是未初始化的var 答案 2 :(得分:1)
Javascript变量没有类型。
a
已初始化到数组; i
根本没有初始化。
没有什么可以阻止你以后写
a = 42;
i = ["Hi", "there!"];
答案 3 :(得分:0)
var a = [], i
字面意思是 将a定义为数组并将i定义为变量 。实际上没有任何东西分配给我。
例如:
var a = 5,
b = 8,
c = "string";
这基本上允许您定义3个变量,而不必使用单词var 3次。速记JavaScript。
在使用变量之前定义变量可防止错误(如果变量不存在),使函数更可靠。例如,不将x定义为变量将导致:
if(x) { /* native code */ }
抛出错误但是:
if(window.x) { /* native code */ }
不会,因为它检查窗口对象的x,其中存储了所有全局变量。
答案 4 :(得分:0)
Javascript变量没有任何类型。这里a初始化为数组
var a = []; //Same as var a= new Array();
我可以有任何价值
var i = 0;// Here it is an integer
i = "Hello";// String. Type changed to string. But it is not a good practice