#javascript #arrays
Вопрос:
У меня есть следующее array
, и я хочу получить доступ к value
под text
свойством:
[
{"detectedLanguage":
{"language": "hin", "score": 1.0},
"translations":[
{"text":"I am a boy", "to":"en"}
]
}
]
Как я могу достичь этого в console.log
или html
?
Ответ №1:
Вы можете создать объект javscript, чтобы получить значение текста (вы можете это сделать).:
let array = [
{
"detectedLanguage":{
"language":"hin",
"score":1.0
},
"translations":[
{
"text":"I am a boy",
"to":"en"
}
]
}
]
console.log(array[0].translations[0].text)
Ответ №2:
Ваша структура выглядит следующим образом:
Array[
Object{"detectedLanguage":
Object{"language": "hin", "score": 1.0},
"translations":Array[
Object{"text":"I am a boy", "to":"en"}
]
}
]
Для доступа к массиву вы используете index
один из элементов. Таким образом, в вашем примере есть только один элемент, с помощью которого вы можете получить к нему доступ Array[0]
. Тогда у вас есть этот объект:
{"detectedLanguage":
{"language": "hin", "score": 1.0},
"translations":[
{"text":"I am a boy", "to":"en"}
]
}
В вашем объекте есть два ключа, называемых detectedLanguage
. Пытаясь связаться text
с вами, вам нужно получить доступ к translations
ключу, который, как Array[0].translations
бы, дал вам следующий объект:
[{"text":"I am a boy", "to":"en"}]
Это еще один массив с объектом в качестве единственного элемента. Таким образом, мы можем напрямую связаться с text
этим временем, позвонив Array[0].translations[0].text
, когда мы ссылаемся на первый элемент translations
и ключ text
объекта, поэтому мы получаем:
I am a boy
Чтобы вызвать это так Array[0].translations[0].text
, нам нужно сохранить Array
в реальном массиве, например:
let myArray = [
{"detectedLanguage":
{"language": "hin", "score": 1.0},
"translations":[
{"text":"I am a boy", "to":"en"}
]
}
]
И тогда ты сможешь просто console.log(myArray[0].translations[0].text)
.