Kutokuwa na Utaratibu wa Vitu katika JavaScript
Kama unavyojua tayari, katika arrays vipengele hupangwa kwa utaratibu mkali, kwani nafasi ya kila kipengele inaamua ufunguo wake. Katika vitu, sisi wenyewe tunaweka funguo, kwa hivyo mpangilio wa vipengele hauna umuhimu. Hiyo ni, arrays ni orodha zilizo na utaratibu, lakini vitu - sivyo.
Kwa mfano, tuchunguze kitu kama hiki:
let obj = {1: 'a', 2: 'b', 3: 'c'};
console.log(obj[1]); // itatoa 'a'
console.log(obj[2]); // itatoa 'b'
console.log(obj[3]); // itatoa 'c'
Ikiwa utabadilisha mpangilio wa vipengele vya kitu hiki kwa namna yoyote (bila shaka, pamoja na funguo zake), hakuna kitakachobadilika katika utendakazi wa hatiyetu (script):
let obj = {3: 'c', 1: 'a', 2: 'b'};
console.log(obj[1]); // itatoa 'a'
console.log(obj[2]); // itatoa 'b'
console.log(obj[3]); // itatoa 'c'
Zaidi ya hayo, funguo za nambari si lazima ziwe na thamani zote bila mapungufu, kama ilivyo kwenye array. Tunaweza kuwa na nambari zozote na hii haitasababisha matatizo yoyote (sawa na arrays zenye mapungufu (sparse arrays)). Kwa hivyo kitu kifuatacho ni sahihi:
let obj = {7: 'a', 50: 'b', 23: 'c'};
Unda kitu na uhakikishe kuwa mpangilio wa funguo ndani yake hauna umuhimu.