• 常用的浅拷贝实现方法


    常用的浅拷贝实现方法

    Object.assign

    ES6中拷贝对象的方法,接受的第一个参数是拷贝的目标target,剩下的参数是拷贝的源对象sources(可以是多个)

    let target = {};
    let source = {
    	a: '123',
    	b: {
    		name: 'javascript'
    	}
    }
    Object.assign(target,source);
    console.log(target); // {a:'123',b:{name:'javascript'}}
    

    Object.assign使用注意事项:

    • 只拷贝源对象的自身属性(不拷贝继承属性)
    • 不会拷贝对象不可枚举的属性
    • undefined和null无法转成对象,他们不能作为Object.assign参数,但是可以作为源对象
    • 属性名为Symbol 值的属性,可以被Object.assign拷贝

    Array.prototype.slice

    let array = [{a:1},{b:2}]
    let array1 = array.slice(0);
    console.log(array1)
    
    • slice:从已有的数组中返回选定的元素

    Array.prototype.concat

    let array = [{a:1},{b:2}]
    let array1 = [].concat(array)
    console.log(array1)
    

    扩展运算符

    let obj = {a:1,b:{c:1}}
    let obj2 = {...obj}
    console.log(obj2)
    
  • 相关阅读:
    python scrapy爬取前程无忧招聘信息
    scrf 原理及flask-wtf防护
    Django 惰性机制
    Django 中配置MySQL数据库
    Django的安装命令
    python装饰器
    python面向对象之继承
    OSI七层模型
    面向对象
    python函数
  • 原文地址:https://www.cnblogs.com/justyouadmin/p/13413990.html
Copyright © 2020-2023  润新知