деструктуризация объекта, когда ключ имеет точечный символ

var x = { "a": 1, "b": 3 }

const { a } = x

console.log(a)

Для приведенного выше кода вывод равен 1, как и ожидалось.

var x = { "a.0.0": 1, "b": 3 }

const { a.0.0 } = x

console.log(a)

но когда в ключе есть символ точки, вывод будет undefined. Как я могу деструктурировать, если в ключе есть точечные символы?


person srinivast6    schedule 08.06.2020    source источник


Ответы (2)


Вам нужно взять ключ в виде строки и другое имя переменной для получения действительной переменной. (Назначение новых имен переменных )

var x  = { "a.0.0": 1, b: 3 };

const { 'a.0.0': a } = x;

console.log(a);

person Nina Scholz    schedule 08.06.2020
comment
У вас уже довольно много представителей, может быть полезно переключить стандартное значение на поиск дубликатов. - person jonrsharpe; 08.06.2020

Привет, вот код, чтобы решить эту проблему :)

var x  = {"a.0.0":1,"b":3}

const {"a.0.0": a1} = x;
//or
const a2 = x["a.0.0"]

console.log(a1, a2)

person Syed Zubair Ahmed    schedule 08.06.2020