html assign无效,Object.assign的一些用法
Object.assign的一些用法
2020/11/12 20:19:03 字體:大 中 小 瀏覽 1289 我要評(píng)論
需要定制網(wǎng)站程序、公眾號(hào)程序、微信小程序可以聯(lián)系:565449214或者加微信13961347334(備注:需要技術(shù))
或者在處理一些技術(shù)問(wèn)題時(shí),有什么不懂的地方,隨時(shí)可以加我QQ:565449214討論技術(shù)或者加QQ群62655404討論
用法1:替換數(shù)組的值
let a = [1,2,3],b = [4,5]
console.log( Object.assign(a,b)); // 后面的值覆蓋前面的值,[4,5,3]
用法2:為對(duì)象添加屬性
下面是es5的寫法:this.xxx =xxx
//??? es5的寫法
class Test{
constructor(x,y){
this.x =x
this.y = y
}
sum(){
return this.x + this.y
}
}
let t = new Test(1,2)
console.log(t.sum());
用Object.assign的寫法
// Object.assign的寫法
class Test2{
constructor(x,y){
Object.assign(this,{x,y})
}
sum2(){
return this.x + this.y
}
}
let t2 = new Test2(1,2)
console.log(t2.sum2());
用法3 深度克隆對(duì)象
//??? 用法3 深度克隆對(duì)象
let clone = (orignObj) => {
let originProto = Object.getPrototypeOf(orignObj)
return Object.assign(Object.create(originProto), orignObj)
}
let obj3 = { name: 'zs', age: 12 }
console.log(clone(obj3));
用法4:合并對(duì)象屬性
下面這種寫法,合并后,原來(lái)的兩個(gè)對(duì)象都已經(jīng)改變
// example1
let obj = {name:'zs'} ,obj2 = {name:'zs',age:12}
let merge = (target, ...v) => Object.assign(target, ...v)
console.log(merge(obj,obj2));// {name:'zs',age:12}
console.log(obj,obj2); // 合并后,兩個(gè)對(duì)象都已經(jīng)改變,值都是 {name:'zs',age:12}
如果不想改變?cè)瓉?lái)的對(duì)象,可以用下面這個(gè)寫法
// example2 合并后,返回一個(gè)新對(duì)象,不更改原有對(duì)象的屬性
let merge2 = (...v) => Object.assign({}, ...v)
console.log(merge2(obj, obj2));// {name:'zs',age:12}
console.log(obj); //? 原來(lái)的對(duì)象保持原樣? {name:'zs'}
console.log(obj2); //? 原來(lái)的對(duì)象保持原樣? {name:'zs',age:12}
//合并對(duì)象,還可以用展開操作符
let obj5 = {name:'zs'},obj6 = {age:12}
let newOjb = {...obj5,...obj6}
console.log(newOjb);
用法5.為默認(rèn)對(duì)象新增屬性
const DEFAULTS = { name: 'zs', age: 13 } // 默認(rèn)對(duì)象
let createObjWithDefault = (opt) => Object.assign({}, DEFAULTS, opt)
console.log(createObjWithDefault({ 'addr': 'gz' }));
正在加載評(píng)論……
呢 稱:
表 情:
內(nèi) 容:
評(píng)論內(nèi)容:不能超過(guò) 1000 字,需審核,請(qǐng)自覺(jué)遵守互聯(lián)網(wǎng)相關(guān)政策法規(guī)。
驗(yàn)證碼:
深山工作室網(wǎng)友評(píng)論聲明,請(qǐng)自覺(jué)遵守互聯(lián)網(wǎng)相關(guān)政策法規(guī)。
您發(fā)布的評(píng)論即表示同意遵守以下條款:
一、不得利用本站危害國(guó)家安全、泄露國(guó)家秘密,不得侵犯國(guó)家、社會(huì)、集體和公民的合法權(quán)益;
二、不得發(fā)布國(guó)家法律、法規(guī)明令禁止的內(nèi)容;互相尊重,對(duì)自己在本站的言論和行為負(fù)責(zé);
三、本站對(duì)您所發(fā)布內(nèi)容擁有處置權(quán)。
總結(jié)
以上是生活随笔為你收集整理的html assign无效,Object.assign的一些用法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 淮米的功效与作用、禁忌和食用方法
- 下一篇: 绿豆糕点的功效与作用、禁忌和食用方法