是否可以通过使用另一个析构参数作为键从传入的对象中获取一个析构变量?
var test = {
a: {
b: 'c'
},
access: 'b'
};
myFunc(test);
function myFunc( { a : { access /*???*/ } } ) {
console.log(/*???*/); // should output 'c'
}
工作方式 -
function myFunc( { a, access }) {
console.log(a[access]); // should output 'c'
}
答案 0 :(得分:2)
是的,这可以使用计算属性名称:
function myFunc( { access, a : { [access]: val } } ) {
console.log(val); // does output 'c' when called with test
}
在访问access
的属性之前,您需要先确保a
已初始化。