伦理片hd-伦理片 在线播放-伦理片 在线-伦理免费在线观看-综合图片区-综合婷婷

訂閱本欄目 RSS您所在的位置: 深山工作室 > HTML > 正文

Object.assign的一些用法

2020/11/12 20:19:03 字體: 瀏覽 2721

用法1:替換數(shù)組的值

let a = [1,2,3],b = [4,5]
console.log( Object.assign(a,b)); // 后面的值覆蓋前面的值,[4,5,3]


用法2:為對象添加屬性
下面是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 深度克隆對象

//    用法3 深度克隆對象
     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:合并對象屬性
下面這種寫法,合并后,原來的兩個對象都已經(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); // 合并后,兩個對象都已經(jīng)改變,值都是 {name:'zs',age:12}
如果不想改變原來的對象,可以用下面這個寫法

  // example2 合并后,返回一個新對象,不更改原有對象的屬性
        let merge2 = (...v) => Object.assign({}, ...v)
        console.log(merge2(obj, obj2));// {name:'zs',age:12}
        console.log(obj); //  原來的對象保持原樣  {name:'zs'}
        console.log(obj2); //  原來的對象保持原樣  {name:'zs',age:12}

//合并對象,還可以用展開操作符
let obj5 = {name:'zs'},obj6 = {age:12}
let newOjb = {...obj5,...obj6}
console.log(newOjb);

       
用法5.為默認(rèn)對象新增屬性

const DEFAULTS = { name: 'zs', age: 13 } // 默認(rèn)對象
let createObjWithDefault = (opt) => Object.assign({}, DEFAULTS, opt)
console.log(createObjWithDefault({ 'addr': 'gz' }));

相關(guān)閱讀
用javascript美化Select,并獲取相應(yīng)的值
ASP.Net 2.0中的5個數(shù)據(jù)控件
javascript編寫的網(wǎng)頁版的打字測試程序
jquery實現(xiàn)下拉加載更多
計算文本框字節(jié)數(shù)
控制背景色
asp之自動閉合UBB標(biāo)簽函數(shù)
黃河龍城2015最幸福情侶投票選舉
共有0條關(guān)于《Object.assign的一些用法》的評論
發(fā)表評論
正在加載評論......
返回頂部發(fā)表評論
呢 稱:
表 情:
內(nèi) 容:
評論內(nèi)容:不能超過 1000 字,需審核,請自覺遵守互聯(lián)網(wǎng)相關(guān)政策法規(guī)。
驗證碼: 驗證碼 
網(wǎng)友評論聲明,請自覺遵守互聯(lián)網(wǎng)相關(guān)政策法規(guī)。

您發(fā)布的評論即表示同意遵守以下條款:
一、不得利用本站危害國家安全、泄露國家秘密,不得侵犯國家、社會、集體和公民的合法權(quán)益;
二、不得發(fā)布國家法律、法規(guī)明令禁止的內(nèi)容;互相尊重,對自己在本站的言論和行為負(fù)責(zé);
三、本站對您所發(fā)布內(nèi)容擁有處置權(quán)。

更多信息>>欄目類別選擇
百度小程序開發(fā)
微信小程序開發(fā)
微信公眾號開發(fā)
uni-app
asp函數(shù)庫
ASP
DIV+CSS
HTML
python
更多>>同類信息
dw里面查找替換使用正則刪除sqlserver里面的CONSTRAINT
javascript獲取瀏覽器指紋可以用來做投票
火狐Mozilla Firefox出現(xiàn):無法載入您的Firefox配置文件 它可能已經(jīng)丟失 或是無法訪問 問題解決集合處理辦法
DW設(shè)置之后更好用 DreamweaverCS編輯GB2312與UTF-8文件在代碼視圖中點擊鼠標(biāo)錯位問題的解決辦法
js指定日期加n天加n月加n年
jquery中動態(tài)生成的代碼使用on hover事件時不出現(xiàn)效果
更多>>最新添加文章
dw里面查找替換使用正則刪除sqlserver里面的CONSTRAINT
Android移動端自動化測試:使用UIAutomatorViewer與Selenium定位元素
抖音直播音掛載小雪花 懂車帝小程序
javascript獲取瀏覽器指紋可以用來做投票
火狐Mozilla Firefox出現(xiàn):無法載入您的Firefox配置文件 它可能已經(jīng)丟失 或是無法訪問 問題解決集合處理辦法
在Android、iOS、Windows、MacOS中微信小程序的文件存放路徑
python通過代碼修改pip下載源讓下載庫飛起
python里面requests.post返回的res.text還有其它的嗎
更多>>隨機抽取信息
CSS的優(yōu)化與技巧
ASP利用fso讀取文件夾里所有文件的名字
網(wǎng)上購物車購物數(shù)量加減效果
旅行社線路主題默認(rèn)模板1
asp導(dǎo)出內(nèi)容到excel表并自定義命名后下載(非打開)
北京順義阿來電腦科技有限公司電腦配件在線網(wǎng)店
主站蜘蛛池模板: 欧美a区 | 国产精品女在线观看 | 任你草 | 四虎亚洲国产成人久久精品 | 91视频免费观看 | 四虎国产精品永免费 | 好莱污下载 | h肉动漫在线观看播放 | 九九精品免费视频 | 国产在线观看一区二区三区 | 久久久久久岛国免费网站 | 狠狠色丁香婷婷综合橹不卡 | 欧美亚洲一区二区三区导航 | 国产精品毛片一区二区三区 | 国产成人一区二区 | 99视频在线观看免费视频 | 日韩a一级欧美一级 | 青草视频在线观看免费视频 | 日韩电 影在线播放 | 国产精品国产自线在线观看 | 毛片在线看免费版 | 花季传媒3.0.3黄版每天三次 | 国产精品成人va在线观看 | 99热成人精品免费久久 | www.色偷偷 | 欧美理论片在线观看一区二区 | 无限免费观看下载在线 | 欧美在线观看网址 | 麻豆国产精品高中生视频 | 男人扒开女人下面狂躁的视频 | 日日干日日操 | h在线观看免费 | 91免费资源网站入口 | 日韩去日本高清在线 | 搓逼视频 | 在线小视频国产 | 在线观看欧美三级 | 日韩欧美视频一区二区三区 | 亚洲精品国产成人中文 | 日韩成人免费在线视频 | 欧美丝袜高跟鞋一区二区 |