Hinzufügen eines neuen Wertes zu einem bestehenden Array in JavaScript

In PHP würde ich etwas tun wie:

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

Wie würde ich das Gleiche in JavaScript machen?

Lösung

Dafür brauchen Sie kein jQuery. Verwenden Sie normales Javascript

var arr = new Array();
// or var arr = [];
arr.push('value1');
arr.push('value2');

Hinweis: In javascript können Sie auch Objekte als Arrays verwenden, haben aber dennoch Zugriff auf die Array-Prototypen. Dies macht das Objekt verhalten sich wie ein Array:

var obj = new Object();
Array.prototype.push.call(obj, 'value');

erzeugt ein Objekt, das wie folgt aussieht:

{
    0: 'value',
    length: 1
}

Sie können auf die Werte wie auf ein normales Array zugreifen, z.B. obj[0].

Kommentare (8)

Das hat nichts mit jQuery zu tun, sondern mit JavaScript im Allgemeinen.

Um ein Array in JavaScript zu erstellen:

var a = [];

Oder:

var a = ['value1', 'value2', 'value3'];

Zum Anhängen von Werten an das Ende eines bestehenden Arrays:

a.push('value4');

Um ein neues Array zu erstellen, sollten Sie wirklich [] statt new Array() aus folgenden Gründen verwenden:

  • neues Array(1, 2) ist äquivalent zu [1, 2], aber neues Array(1) ist nicht äquivalent zu [1]. Vielmehr ist letzteres näher an [undefiniert], da ein einziges Integer-Argument an den Array-Konstruktor die gewünschte Array-Länge angibt.
  • Array" ist, genau wie jede andere eingebaute JavaScript-Klasse, kein Schlüsselwort. Daher könnte jemand Array in Ihrem Code leicht definieren, um etwas anderes zu tun als ein Array zu konstruieren.
Kommentare (1)

Sie können die Methode .push() (Standard-JavaScript) verwenden

z.B..

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