javascript - 如何使用 ES6 解构添加默认值和别名?

标签 javascript ecmascript-6 destructuring

我有一个特定的用例,我想做一个嵌套的解构并分配一个别名(将它重命名为另一个变量名,比如 aliasD)以及一个属性的默认值.例如

const a = { b: { c: [{ d: 'value' }] } };

在解构时我只需要 d 但有一个别名 aliasD 和一个默认值 defaultVal。所以我在下面尝试过,但我不确定我错过了什么

const a = { b: { c: [{ d: 'value' }] } };
const { b: { c: [first: { d: aliasD = defaultVal }] } } = a;

console.log(aliasD);

但这行不通

最佳答案

这里的问题是解构数组,获取数组第一个值的正确语法是:

[varName] = yourArray

将其应用于您的示例:

const { b: { c: [{ d: aliasD = 'test' }] } } = a;

你可以用 Babel REPL 试试

关于javascript - 如何使用 ES6 解构添加默认值和别名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42374120/

相关文章:

javascript - 这种叫做: const {a, b, c} = x;的变量赋值是什么?

javascript - 如何解构 es6 javascript 嵌套对象

clojure - 解构:这怎么行得通?

javascript - 如何在上传文件之前显示文件名。

javascript - Plotly 曲面图数据是如何映射的?

javascript - 在es6中动态运行函数

reactjs - 使用继承的 ES6 React 类时未触发 componentDidMount 方法

javascript - 迭代多层对象?

javascript - jQuery off() 和 unbind() 有什么区别

javascript - 仅在选中时更改所选选项的文本