是否有可能使用解构来追加?

时间:2016-12-29 15:46:27

标签: javascript

我想知道我是否可以使用解构来附加到列表中?

E.g。

p = [];
q = [];
var obj_1 = {a: 42, b: 52};
var obj_2 = {a: 43, b: 53};
var {p, q} = obj_1;
{p, q} = obj_2;

第一次应该给我: p = [42] q = [52]

然后下次

应该给我 p = [42,43] q = [52,53]

以上示例不起作用。所以我的问题是是否有可能通过破坏来实现。或者,如果有其他替代方式?

1 个答案:

答案 0 :(得分:3)

不是那种有用或省力的方式。你可以这样做:

({a:p[p.length], b:q[q.length]} = obj_1);

......但......: - )

const p = [];
const q = [];
const obj_1 = {a: 42, b: 52};
const obj_2 = {a: 43, b: 53};
({a:p[p.length], b:q[q.length]} = obj_1);
console.log("p", JSON.stringify(p), "q", JSON.stringify(q));
({a:p[p.length], b:q[q.length]} = obj_2);
console.log("p", JSON.stringify(p), "q", JSON.stringify(q));