Я пытаюсь получить значение от объекта, и я просто не могу его получить. Максимум, который я получаю, составляет that,have
, используя console.log(randomWords)
Извлечение значений из глубокого объекта
Я уверен, что я здесь что-то не так, но я уже много часов пытался найти ошибку. Объект выглядит отлично, и я просто не могу найти способ получить доступ к этим глубоким значениям.
var words = {
"that": {
"languages": {
"pt": {
"multiple_meanings": true,
"meaning": ["aquilo", "aquela"]
},
"it": {
"multiple_meanings": false,
"meaning": "quella"
}
}
},
"this": {
"languages": {
"pt": {
"multiple_meanings": true,
"meaning": ["este", "esta"]
},
"it": {
"multiple_meanings": true,
"meaning": ["questo", "questa"]
},
}
}
};
var userChoseLanguage = "pt"
var wordsKeysArr = Object.keys(words).toArray;
var wordIndex = Math.floor(Math.random() * wordsKeysArr.length);
//store a random word in randomWord
var randomWord = recipesKeysArr[factIndex];
//if user chose pt
if(userChoseLanguage == "pt"){
//if multiple_meanings = true
if(randomWord.languages.multiple_meanings===true) {
console.log("This word has more than one meaning");
}
else {
console.log(randomWord.languages.meaning);
}
}
У вас нет JSON. Это JavaScript. В вашем примере ничего не связано с JSON. –
Возможный дубликат [Доступ/процесс (вложенные) объекты, массивы или JSON] (http://stackoverflow.com/questions/11922383/access-process-nested-objects-arrays-or-json) –