使用 ES6 解构,他们有什么方法可以在赋值时解构嵌套对象吗?
这是一个快速代码示例来说明我的意思:
let node = {
ItemTitle: 'Title',
ItemId: 5,
Menu: {Item: [{ItemId: 579}]
}
// my attempts
let {
ItemId: id,
ItemTitle: title,
Menu['Item']: subItems
} = node
let {
ItemId: id,
ItemTitle: title,
Menu.Item: subItems
} = node
您可以对嵌套级别重复与解构顶层相同的语法:
根据您的评论进行编辑
我需要数组中的对象
let node = {
ItemTitle: 'Title',
ItemId: 5,
Menu: {Item: [{ItemId: 579}]}
}
let {
ItemId: id, // extract `node.ItemId` into a variable called `id`
ItemTitle: title, // extract `node.ItemTitle` into a variable called `title`
Menu: {
Item: [obj] // extract `node.Menu.Item[0]` into a variable called obj
}
} = node;
console.log('id =', id);
console.log('title =', title);
console.log('obj =', obj);
预编辑:提取嵌套数组中对象的 id。
let node = {
ItemTitle: 'Title',
ItemId: 5,
Menu: {Item: [{ItemId: 579}]}
}
let {
ItemId: id, // extract `node.ItemId` into a variable called `id`
ItemTitle: title, // extract `node.ItemTitle` into a variable called `title`
Menu: {
Item: [{
ItemId: subItemId // extract `node.Menu.Item[0].ItemId` into a variable called `subItemId`
}]
}
} = node;
console.log('id =', id);
console.log('title =', title);
console.log('subItemId =', subItemId);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)