在PHP中,我会这样做:

$array = array();
$array[] = "value1";
$array[] = "value2";
$array[] = "value3";

如何在JavaScript中做同样的事情?


当前回答

array = ["value1", "value2", "value3"]

与其说它是jquery,不如说是javascript

其他回答

这与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来做一些事情,而不是构造数组。

您可以使用.push()方法(这是标准JavaScript)

e.g.

var primates = new Array();
primates.push('monkey');
primates.push('chimp');

你不需要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]一样访问这些值。

有几种方法:

实例化数组:

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 = ["value1", "value2", "value3"]

与其说它是jquery,不如说是javascript