Разрушение Javascript в консоли Chrome - PullRequest
0 голосов
/ 22 ноября 2018

Я пытаюсь разрушить JavaScript с помощью следующего кода на вкладке консоли Chrome, который дает мне Uncaught SyntaxError: Identifier 'a' has already been declared исключение

o = { a: "foo", b: 12, c: "bar" };
let { a, b } = o;
console.log(a);
console.log(b);

output:
foo
12

, но просто меняя имена переменных, он работает нормально, например,

o = { p: "foo", q: 12, r: "bar" };
let { p, q } = o;
console.log(p);
console.log(q);

Может кто-нибудь объяснить мне, почему это происходит?

1 Ответ

0 голосов
/ 22 ноября 2018

Хорошо, оба работают нормально с первого раза, проблема в том, что вы выполнили код более одного раза.В следующий раз у вас будет эта ошибка, потому что var уже определен, когда вы ранее выполняли код.

Попробуйте следующее.Откройте новый браузер Chrome и введите about: blank в URL.дважды наберите

let a;

в консоли, и вы получите ту же ошибку

...