在PHP中,我会这样做:
$array = array();
$array[] = "value1";
$array[] = "value2";
$array[] = "value3";
如何在JavaScript中做同样的事情?
在PHP中,我会这样做:
$array = array();
$array[] = "value1";
$array[] = "value2";
$array[] = "value3";
如何在JavaScript中做同样的事情?
你不需要jQuery。使用常规javascript
var arr = new Array();
// or var arr = [];
arr.push('value1');
arr.push('value2');
注意:在javascript中,你也可以使用对象作为数组,但仍然可以访问数组原型。这使得对象的行为像一个数组:
var obj = new Object();
Array.prototype.push.call(obj, 'value');
将创建一个如下所示的对象:
{
0: 'value',
length: 1
}
你可以像访问普通数组f.ex obj[0]一样访问这些值。
您可以使用.push()方法(这是标准JavaScript)
e.g.
var primates = new Array();
primates.push('monkey');
primates.push('chimp');
这与jQuery无关,只是一般的JavaScript。
用JavaScript创建一个数组:
var a = [];
Or:
var a = ['value1', 'value2', 'value3'];
在现有数组的末尾追加值:
a.push('value4');
要创建一个新数组,你应该使用[]而不是new array(),原因如下:
new Array(1,2)等价于[1,2],但new Array(1)不等价于[1]。相反,后者更接近于[undefined],因为数组构造函数的单个整数参数指示所需的数组长度。 Array,就像任何其他内置JavaScript类一样,不是关键字。因此,有人可以很容易地在代码中定义Array来做一些事情,而不是构造数组。
jQuery是JavaScript的抽象。jQuery可以看作是JavaScript的一个子集,目的是与DOM一起工作。话虽如此;有一些函数用于向集合中添加项。在你的情况下,我会使用基本的JavaScript:
var array;
array[0] = "value1";
array[1] = "value2";
array[2] = "value3";
... 或者:
var array = ["value1", "value2", "value3"];
... 或者:
var array = [];
array.push("value1");
array.push("value2");
array.push("value3");
数组是JavaScript原生对象,为什么不直接使用它的API呢?了解API本身将为您在转向纯JavaScript或其他框架时节省时间。
有很多不同的可能性,所以,使用最能满足你需求的那个。
创建值数组:
var array = ["value1", "value2", "value3"];
最后增加价值
var array = [];
array.push("value1");
array.push("value2");
array.push("value3");
向开始添加值:
var array = [];
array.unshift("value1");
array.unshift("value2");
array.unshift("value3");
在某些索引上增加值:
var array = [];
array[index] = "value1";
或者使用splice
array.splice(index, 0, "value1", "value2", "value3");
选择一个你需要的。
有几种方法:
实例化数组:
var arr;
arr = new Array(); // empty array
// ---
arr = []; // empty array
// ---
arr = new Array(3);
alert(arr.length); // 3
alert(arr[0]); // undefined
// ---
arr = [3];
alert(arr.length); // 1
alert(arr[0]); // 3
推入数组:
arr = [3]; // arr == [3]
arr[1] = 4; // arr == [3, 4]
arr[2] = 5; // arr == [3, 4, 5]
arr[4] = 7; // arr == [3, 4, 5, undefined, 7]
// ---
arr = [3];
arr.push(4); // arr == [3, 4]
arr.push(5); // arr == [3, 4, 5]
arr.push(6, 7, 8); // arr == [3, 4, 5, 6, 7, 8]
使用.push()是添加数组的更好方法,因为您不需要知道数组中已经有多少项,并且您可以在一个函数调用中添加许多项。
实际上,你必须初始化你的数组,然后使用array.push()命令行。
var array = new Array();
array.push("first value");
array.push("second value");