Chrome控制台中的Javascript解构

问题描述 投票:0回答:1

我正在使用Chrome的控制台选项卡中的以下代码尝试JavaScript破坏,这给了我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);

谁能解释我为什么会这样?

javascript destructuring google-chrome-console
1个回答
2
投票

好吧,第一次都正常工作,问题是你不止一次执行代码。下次出现该错误时,因为在您之前执行代码时已经定义了var。

请尝试以下方法。打开一个新的Chrome浏览器,在URL中输入about:blank。类型

let a;

在控制台两次,你会得到同样的错误

© www.soinside.com 2019 - 2024. All rights reserved.