JavaScript'te Çok Boyutlu Yapılarda Değişkenlerden Anahtarlar
Aşağıdaki nesne verilmiş olsun:
let obj = {
'sub1': ['11', '12', '13'],
'sub2': ['21', '22', '23'],
};
Nesnemizden bir öğe çıkaralım,
örneğin, '22' öğesi:
console.log(obj['sub2'][1]);
Şimdi anahtarların değişkenlerde saklandığını varsayalım:
let key1 = 'sub2';
let key2 = 1;
Değişkenlerimizi kullanarak çok boyutlu yapının bir öğesini çıkaralım:
console.log(obj[key1][key2]);
Yıllar, aylar ve günler için iş listesini saklamak üzere aşağıdaki yapı verilmiş olsun:
let affairs = {
'2018': {
11: {
29: ['name111', 'name112', 'name113'],
30: ['name121', 'name122', 'name123'],
},
12: {
30: ['name211', 'name212', 'name213'],
31: ['name221', 'name222', 'name223'],
},
},
'2019': {
12: {
29: ['name311', 'name312', 'name313'],
30: ['name321', 'name322', 'name323'],
31: ['name331', 'name332', 'name333'],
}
},
}
Ayrıca yıl, ay ve gün içeren üç değişken verilmiş olsun. Değişkenlerin değerlerine karşılık gelen işi çıkarın.
Aşağıdaki kodun yazarı '24' değerine sahip
öğeyi çıkarmak istedi:
let obj = {
key1: {
key2: '12',
key3: '13',
},
key2: {
key4: '24',
key5: '25',
},
}
let key1 = 'key2';
let key2 = 'key4';
console.log(obj['key1'][key2]);
Ancak kod, yazarın beklediğini çıkarmıyor. Hatayı düzeltin.
Aşağıdaki kodun yazarı '24' değerine sahip
öğeyi çıkarmak istedi:
let obj = {
key1: {
key2: '12',
key3: '13',
},
key2: {
key4: '24',
key5: '25',
},
}
let key1 = 'key2';
let key2 = 'key4';
console.log(obj.key1.key2);
Ancak kod, yazarın beklediğini çıkarmıyor. Hatayı düzeltin.
Aşağıdaki kodun yazarı '24' değerine sahip
öğeyi çıkarmak istedi:
let obj = {
key1: {
key2: '12',
key3: '13',
},
key2: {
key4: '24',
key5: '25',
},
}
let key1 = 'key2';
let key2 = 'key4';
console.log(obj.key1['key2']);
Ancak kod, yazarın beklediğini çıkarmıyor. Hatayı düzeltin.
Aşağıdaki kodun yazarı '24' değerine sahip
öğeyi çıkarmak istedi:
let obj = {
key1: {
key2: '12',
key3: '13',
},
key2: {
key4: '24',
key5: '25',
},
}
let key1 = 'key2';
console.log(obj['key1']['key4']);
Ancak kod, yazarın beklediğini çıkarmıyor. Hatayı düzeltin.