I PHP ville jeg gjort noe sånt som:
$array = array();
$array[] = "value1";
$array[] = "value2";
$array[] = "value3";
Hvordan ville jeg gjøre det samme i JavaScript?
Du trenger ikke jQuery for det. Bruk vanlig javascript
var arr = new Array();
// or var arr = [];
arr.push('value1');
arr.push('value2');
Merk: I javascript kan du også bruke Objects as Arrays, men fortsatt ha tilgang til Array-prototypene. Dette gjør at objektet oppfører seg som en matrise:
var obj = new Object();
Array.prototype.push.call(obj, 'value');
vil opprette et objekt som ser ut som:
{
0: 'value',
length: 1
}
Du kan få tilgang til hvelvene akkurat som et vanlig array, f.eks obj[0]
.
Dette har ingenting med jQuery å gjøre, bare JavaScript generelt.
Slik oppretter du en matrise i JavaScript:
var a = [];
Or:
var a = ['value1', 'value2', 'value3'];
For å legge til verdier på slutten av eksisterende array:
a.push('value4');
For å opprette en ny matrise bør du egentlig bruke []
i stedet for new Array()
av følgende grunner:
new Array(1, 2)
er ekvivalent med [1, 2]
, men new Array(1)
er ikke ekvivalent med [1]
. Snarere er sistnevnte nærmere [udefinert]
, siden et enkelt heltallsargument til Array
-konstruktøren angir ønsket arraylengde.Array
, akkurat som alle andre innebygde JavaScript-klasser, er ikke et nøkkelord. Derfor kan noen enkelt definere Array
i koden din for å gjøre noe annet enn å konstruere en matrise.