JavaScript变量声明

时间:2011-04-28 00:29:32

标签: javascript

这是一个非常愚蠢的问题,但我只是在这里画一个空白......

这是什么类型的变量声明:

var s1 = [1,2,3,4]

另外,当这些对象的数量未知时,如何从多个对象构造这样的变量。这就是我提出的,但是没有用。

var s1 = [];
for(x in data[i].uh) {
    s1 += data[i].uh[x];
}

6 个答案:

答案 0 :(得分:2)

这称为Array,可以使用new Array()或使用示例中的数组文字[]声明。您可以使用Array.push()方法(see docs)为其添加新值:

var s1 = [];
for(x in data[i].uh) {
    s1.push(data[i].uh[x]);
}

答案 1 :(得分:2)

var s1 = [1,2,3,4]

是使用"Array Literal Notation"

的四个整数的数组声明

您不需要循环来复制数组,只需执行此操作:

var s1 = data.slice(0);

或在您的示例中,您可能需要这样:

var s1 = data[i].uh.slice(0);

在此处阅读有关复制数组的更多信息:http://my.opera.com/GreyWyvern/blog/show.dml/1725165

  

“slice(0)方法的意思是,返回a   从元素0到数组的数组切片   结束。换句话说,整个   阵列。 Voila,阵列的副本。“

答案 2 :(得分:2)

这个

var s1 = [1,2,3,4]

是一个数组声明。

要向数组添加元素,请使用push方法:

var s1 = [];
for(x in data[i].uh) {
    s1.push(data[i].uh[x]);
}

答案 3 :(得分:2)

s1是一个数组,它是一个带有函数的正确Javascript对象。

var s1 = [];

是创建数组的推荐方法。而不是:

var s1 = new Array();

(见:http://www.hunlock.com/blogs/Mastering_Javascript_Arrays

要将项目添加到数组,请使用s1.push(item),以便您的代码为:

var s1 = [];
for(x in data[i].uh) {
    s1.push(data[i].uh[x]);
}

作为旁注,我不建议使用for-in,至少在没有检查hasOwnProperty的情况下。

答案 4 :(得分:1)

它声明了一个局部变量,Array有4个成员。

如果您想要附加到Array,请使用push()方法。

答案 5 :(得分:1)

这是一个数组。要添加到数组,您将使用Array.push()。例如:

var s1 = [];
s1.push(1);
s1.push(2);