#javascript #arrays #variables #push
Вопрос:
У меня есть код
var myArray = []
myArray.push( { "bob" : { "banana" : "yellow" } })
console.log(myArray)
который возвращает
{
"bob": {
"banana": "yellow"
}
}
Теперь я хочу изменить переменные следующим образом:
var myArray = []
var name = "bob"
var fruit = "banana"
var fruitcolor = "yellow"
myArray.push( { name : { fruit : fruitcolor } })
console.log(myArray)
но это не приводит к тому же результату. Как мне это исправить?
Спасибо!
Комментарии:
1.
myArray.push( { [name] : { [fruit] : fruitcolor } })
. Используйте обозначения в скобках.
Ответ №1:
Если вы хотите установить строку в качестве ключа объекта, вы должны использовать bracket notation
Заменять
myArray.push( { name : { fruit : fruitcolor } })
с :
myArray.push( { [name] : { [fruit] : fruitcolor } })