...">
瀏覽量:130次
js object.assign 方法給如何使用?一起學(xué)習(xí)一下吧!
js object.assign作用是用于將所有可枚舉屬性的值從一個(gè)或多個(gè)源對象復(fù)制到目標(biāo)對象,它將返回目標(biāo)對象。
語法:Object.assign(target, ...sources)
參數(shù):target: 目標(biāo)對象
? ? ? ? ? sources: 源對象
?實(shí)例:
? ? ? ? const one = {a: 1, b: 2}
? ? ? ? const two = {c: '3', d: '4'}
? ? ? ? var three = Object.assign({e: 5}, one, two)
? ? ? ? 打印結(jié)果:
? ? ? ? ? ? three.a => 1
? ? ? ? ? ? three.c => 3
? ? ? ? ? ? three.e => 5
注意事項(xiàng):
? ? ? ? 1. 如果目標(biāo)對象中的屬性具有相同的鍵,則屬性將被源中的屬性覆蓋。后來的源的屬性將類似地覆蓋早先的屬性。(對應(yīng)key的value更新)
? ? ? ? 2. Object.assign 方法只會拷貝源對象可枚舉的屬性到目標(biāo)對象。
? ? ? ? 3. Object.assign 不會跳過那些值為 [null] 或 [undefined]的源對象。
? ? ? ? 4. 對于單層屬性,目標(biāo)對象和源對象屬性值的更改不會相互影響
? ? ? ? 5. 對于深層屬性,即屬性的key作為引用指向另一個(gè)對象。目標(biāo)拷貝的是源對象的引用,目標(biāo)對象和源對象屬性值的更改會相互影響。
? ? ? ? 6. 目標(biāo)對象等于返回對象,所有操作都是針對目標(biāo)對象的即參數(shù)中的target對象
? ? ? ? 7. 繼承屬性和不可枚舉屬性是不能拷貝的
[聲明]本網(wǎng)轉(zhuǎn)載網(wǎng)絡(luò)媒體稿件是為了傳播更多的信息,此類稿件不代表本網(wǎng)觀點(diǎn),本網(wǎng)不承擔(dān)此類稿件侵權(quán)行為的連帶責(zé)任。故此,如果您發(fā)現(xiàn)本網(wǎng)站的內(nèi)容侵犯了您的版權(quán),請您的相關(guān)內(nèi)容發(fā)至此郵箱【779898168@qq.com】,我們在確認(rèn)后,會立即刪除,保證您的版權(quán)。
官網(wǎng)優(yōu)化
整站優(yōu)化
渠道代理
400-655-5776