JavaScript-daky obýektleriň tertipsizligi
Bilşiňiz ýaly, massiwlerde elementler gatysyk tertipte ýerleşýär, sebäbi her bir elementiniň pozisiýasy onuň açaryny kesgitleýär. Obýektlerde bolsa, açarlary özümiz belläp býakarýs, şonuň üçin elementleriň yzygiderligiň ähmiýeti ýok. Ýagny massiwler tertipli sanawlar bolup, obýektler bolsa tertipsizdir.
Mysal üçin, şu obýekdi göz öňüne getireliň:
let obj = {1: 'a', 2: 'b', 3: 'c'};
console.log(obj[1]); // 'a' çykarar
console.log(obj[2]); // 'b' çykarar
console.log(obj[3]); // 'c' çykarar
Eger bu obýektiň elementlerini (elbetde, olaryň açarlary bilen birlikde) islendik tertipde çalşyp goýsaňyz, bu bizim skriptimiziň işleýşine hiç hili üýtgeşiklik getirmeýär:
let obj = {3: 'c', 1: 'a', 2: 'b'};
console.log(obj[1]); // 'a' çykarar
console.log(obj[2]); // 'b' çykarar
console.log(obj[3]); // 'c' çykarar
Bundan başga-da, sanly açarlaryň massiwdeki ýaly hepsi deşiksiz, dowamly bahalary bolmaly däldir. Bizde islendik sanlar bolup biler we bu hiç hili kynçylyklara getirmez (massiwleriň dälliliginde ýaly). Şonuň üçin aşakdaky obýekt dogry:
let obj = {7: 'a', 50: 'b', 23: 'c'};
Bir obýekt dörediň we onuň içindäki açarlaryň tertibiniň ähmiýetsizdigine göz ýetiriň.