zoukankan      html  css  js  c++  java
  • Object.assign简单总结

    定义

    Object.assign方法用来将源对象source的所有可枚举属性复制到目标对象target。至少需要两个对象作为参数,第一个参数为源对象,后面的均为目标对象。(以下用source代指源对象,target代指目标对象)

    特性

    • 若target与source中有同名属性,则后面的属性覆盖前面的属性
    • Object.assign只复制自身属性,不可枚举属性(enumerable为false)和继承属性不会被复制
    • 属性名为Symbol的属性,也会被复制
    • 对于嵌套的对象,Object.assign的处理方法是替换,而不是添加。(因此无法实现深复制)
    • Object.assign可以处理数组,但是会将其视为对象,即将数组中的元素认为是属性名为0、1、2等的对象。Object.assign([1,2,3],[4,5])的结果为[4,5,3]。

    用途

    • 为对象添加属性、方法
    • 克隆对象Object.assign({},target);
    • 合并多个对象(若要等到一个新的对象,则将source设为{})
    • 为属性指定默认值Object.assign({},DEFAULTS,options),一般情况下,DEFAULTS为默认值,options为用户提供的参数。(由于不能深复制,因此注意DEFAULTS和options只能是简单对象)
  • 相关阅读:
    进程池Pool
    进程间通信-Queue
    多任务版udp聊天器
    列表循环放引用并写出打印结果
    协程实现tcp两个客户端的通讯
    正则匹配身份证和邮箱
    python中上双互斥锁的线程执行流程
    小巧的http live streaming m3u8播放器
    js实现@提到好友
    mongoose多级嵌套操作
  • 原文地址:https://www.cnblogs.com/youhong/p/9362371.html
Copyright © 2011-2022 走看看