我想通过this
向destructuring assignment
对象添加新密钥和值,但它出错了:
Uncaught SyntaxError: Unexpected token :
让我看看我的例子,假设我有obj
数据对象:
const obj = {
'a':'1',
'b':'2',
'c':'3',
};
现在我想将这些数据绑定到this
对象,意味着我们想拥有:
console.log(this.a); //=> "1"
所以对于解构赋值,我写的就像这些:
{
a: this.a,
b: this.b,
c: this.c,
} = obj;
但它出错了:
Uncaught SyntaxError: Unexpected token :
我不使用const
,let
或var
,因为this
对象已被声明。我怎么能达到我的愿望?可以destructuring assignment
吗?
只需通过正常分配即可:
this.a = obj.a;
this.b = obj.b;
this.c = obj.c;
我只是想要新的JavaScript
代码。
答案 0 :(得分:4)
您需要使用括号来区分销毁对象和块语句。
({
a: this.a,
b: this.b,
c: this.c,
} = obj);