PHP kalba daryčiau kažką panašaus į:
$array = array();
$array[] = "value1";
$array[] = "value2";
$array[] = "value3";
Kaip tą patį padaryčiau "JavaScript"?
Tam nereikia jQuery. Naudokite įprastą javascript
var arr = new Array();
// or var arr = [];
arr.push('value1');
arr.push('value2');
Pastaba: javascript sistemoje objektus taip pat galite naudoti kaip masyvus, tačiau vis tiek turėsite prieigą prie masyvų prototipų. Dėl to objektas elgiasi kaip masyvas:
var obj = new Object();
Array.prototype.push.call(obj, 'value');
sukurs objektą, kuris atrodys taip:
{
0: 'value',
length: 1
}
Prie vaules galite prieiti kaip prie įprasto masyvo, pvz., obj[0]
.
Tai nesusiję su "jQuery", tiesiog apskritai su "JavaScript".
Norėdami sukurti masyvą "JavaScript":
var a = [];
Arba:
var a = ['value1', 'value2', 'value3'];
Pridėti reikšmes prie esamo masyvo galo:
a.push('value4');
Norėdami sukurti naują masyvą, iš tikrųjų turėtumėte naudoti []
, o ne new Array()
dėl šių priežasčių:
new Array(1, 2)
yra lygiavertis [1, 2]
, bet new Array(1)
nėra lygiavertis [1]
. Pastarasis veikiau yra artimesnis [neapibrėžtam]
, nes vienintelis sveikojo skaičiaus argumentas konstruktoriui Array
nurodo norimą masyvo ilgį.Array
, kaip ir bet kuri kita "JavaScript" integruota klasė, nėra raktažodis. Todėl kas nors gali lengvai apibrėžti Array
savo kode, kad atliktų ką nors kita, o ne sukonstruotų masyvą.