久久久久成人免费看a含羞草久色_91福利资源站_好色综合网_久久久久国产精品一区二区三区_一级片免费看_久久久久国产精品久久久久

订阅本栏目 RSS您所在的位置: 深山工作室 > HTML > 正文

Object.assign的一些用法

2020/11/12 20:19:03 字体: 浏览 2588

用法1:替换数组的值

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:合并对象属性
下面这种写法,合并后,原来的两个对象都已经改变
// 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); // 合并后,两个对象都已经改变,值都是 {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.为默认对象新增属性

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

相关阅读
Div+CSS+JS树型菜单,可刷新
长春海外旅游有限责任公司
实时输入数字自动转换为货币形式并计算
解决国内 github.com 打不开的准确方法
uni-app实现上拉加载,下拉刷新(下拉带动画)
实现iis6与iis7环境下支持mp4视频随意拖动、预览播放、边下载边播放
常见显示器尺寸与分辨率对照
css 里面的图片定位position高级应用
共有0条关于《Object.assign的一些用法》的评论
发表评论
正在加载评论......
返回顶部发表评论
呢 称:
表 情:
内 容:
评论内容:不能超过 1000 字,需审核,请自觉遵守互联网相关政策法规。
验证码: 验证码 
网友评论声明,请自觉遵守互联网相关政策法规。

您发布的评论即表示同意遵守以下条款:
一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家、社会、集体和公民的合法权益;
二、不得发布国家法律、法规明令禁止的内容;互相尊重,对自己在本站的言论和行为负责;
三、本站对您所发布内容拥有处置权。

更多信息>>栏目类别选择
百度小程序开发
微信小程序开发
微信公众号开发
uni-app
asp函数库
ASP
DIV+CSS
HTML
python
更多>>同类信息
dw里面查找替换使用正则删除sqlserver里面的CONSTRAINT
javascript获取浏览器指纹可以用来做投票
火狐Mozilla Firefox出现:无法载入您的Firefox配置文件 它可能已经丢失 或是无法访问 问题解决集合处理办法
DW设置之后更好用 DreamweaverCS编辑GB2312与UTF-8文件在代码视图中点击鼠标错位问题的解决办法
js指定日期加n天加n月加n年
jquery中动态生成的代码使用on hover事件时不出现效果
更多>>最新添加文章
dw里面查找替换使用正则删除sqlserver里面的CONSTRAINT
Android移动端自动化测试:使用UIAutomatorViewer与Selenium定位元素
抖音直播音挂载小雪花 懂车帝小程序
javascript获取浏览器指纹可以用来做投票
火狐Mozilla Firefox出现:无法载入您的Firefox配置文件 它可能已经丢失 或是无法访问 问题解决集合处理办法
在Android、iOS、Windows、MacOS中微信小程序的文件存放路径
python通过代码修改pip下载源让下载库飞起
python里面requests.post返回的res.text还有其它的吗
更多>>随机抽取信息
程序员在网站设计时应注意的SEO细节
flash关闭动画时同时关闭网页的代码
asp利用正则检查手机端的浏览器标识来确定是否是手机访问 如果是手机访问就使用手机模板
jquery设置或获取修改classname
邓州市途鸿旅行社
刘浏家俱
主站蜘蛛池模板: 国产成人夜色影视视频 | 亚洲天堂999| 久青草久青草视频在线观看 | 亚洲高清网站 | 久久国产加勒比精品无码 | 天堂va蜜桃一区二区三区 | 97国产精华最好的产品亚洲 | 久久久精品人妻一区二区三区 | 小明精品国产一区二区三区 | 国内精品久久久久久久久久久久 | 成人性生交大片免费 | 欧美va亚洲va在线观看蝴蝶网 | 91精品乱码一区二区三区 | 欧美性大战xxxxx久久久 | 欧美成人形色生活片 | 国产性天天综合网 | 日日夜夜影院 | 91在线一区二区三区 | 9色在线 | 欧美日韩视频在线一区二区 | 伊人精品视频 | 国产精品久久久久久久人人看 | 在线观看a网站 | 国产高清自拍一区 | 国产精品办公室沙发 | 在线看片日本 | 久久久久久亚洲av无码精品专口 | 蜜臀av无码一区二区三区 | 精品一区二区三区四区在线 | 精品日韩在线视频 | 青青青国产免费一夜七次郎 | 欧美小网站| 亚洲人成欧美中文字幕 | 亚洲色图制服丝袜 | 欧美熟妇色ⅹxxx欧美妇 | 忘忧草www中文在线资源 | 亚洲福利精品一区二区三区 | 99国产精品欧美久久久久久影院 | 丁香婷婷影音先锋5566 | 亚洲日本一区二区三区在线 | 日本aaaaa毛片在线视频 |