JavaScript-də obyekt xassəsinə müraciət xətası
Obyektin xassəsinə müraciət edərkən bu xassənin adı dəyişəndə saxlanıla bilməz. Gəlin görək niyə. Tutaq ki, bizə belə bir obyekt verilib:
let obj = {a: 1, b: 2, c: 3};
Tutaq ki, dəyişəndə qiymətini almaq istədiyimiz xassənin adı saxlanılır:
let key = 'a';
Gəlin bu dəyişəni istifadə edərək obyektin xassəsinə müraciət etməyə çalışaq:
console.log(obj.key); // undefined
Göstərilən kod işləməyəcək, çünki
əslində biz adı 'key' olan xassəni axtarırıq,
adı key dəyişənində saxlanılan xassəni yox.
Yəni əslində bizim kod aşağıdakına bərabərdir:
console.log(obj['key']);
Dəyişəndən gələn açar vasitəsilə elementə müraciət etməyin yeganə yolu bu dəyişəni kvadrat mötərizələr içində yazmaqdır:
console.log(obj[key]);
Aşağıdakı koddakı səhvi düzəldin:
let obj = {x: 1, y: 2, z: 3};
let prop = 'x';
console.log(obj.prop);
Aşağıdakı koddakı səhvi düzəldin:
let obj = {x: 1, y: 2, z: 3};
let prop = 'x';
console.log(obj['prop']);