Столкнулся с проблемой при попытке поменять местами переменные после деструктуризации массива. Когда использую такой код:
let [x,y] = menu.items
console.log(x)
console.log(y)
let temp = [y,x]
let data = {
products : ['banana','grape','potato'],
}
let [first,second] = data.products
[first,second] = [second,first]
Выдает ошибку:
script.js:62 Uncaught ReferenceError: Cannot access ‘first’ before initialization
Но если добавить точку с запятой в конце строки перед обменом значений, то все работает нормально:
let [x,y] = menu.items
console.log(x)
console.log(y)
let temp = [y,x]
let data = {
products : ['banana','grape','potato'],
}
let [first,second] = data.products;
[first,second] = [second,first]
В чем может быть причина такого поведения?