簡體   English   中英

ECMAScript 對象傳播/休息 - 一次分配給多個屬性

[英]ECMAScript object spread/rest - assigning to multiple properties at once

新的 object rest/spread 語法有一些非常好的應用,比如從 object 中省略一個字段

是否有(建議的)方法也可以將同名變量的值分配給對象的多個屬性? 換句話說,一種更簡短的說法:

o.foo = foo;
o.bar = bar;
o.baz = baz;

注意:在不丟失o現有屬性的情況下,只添加它們。

使用Object.assign

 const o = { initial: 'initial' }; const foo = 'foo'; const bar = 'bar'; const baz = 'baz'; Object.assign(o, { foo, bar, baz }); console.log(o);

請注意,速記屬性名稱和Object.assign都是在 ES6 中引入的——它不需要非常最新的瀏覽器/環境。

將引用重新分配給對象的類似方法是通過傳播o列表foo, bar, baz來初始化另一個對象:

 let o = { initial: 'initial' }; const foo = 'foo'; const bar = 'bar'; const baz = 'baz'; o = { ...o, foo, bar, baz }; console.log(o);

const foo = 'foo';
const bar = 'bar';
const baz = 'baz';
const o = {foo, bar, baz};
console.log(o);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM