JavaScript 中Object的复制方法小结

使用JavaScript时,经常会对object进行操作,这里简单的总结一下对object的几种复制方法。

1. JSON.stringify() && JSON.parse()

如果一个object只是包含JSON字符串,那么可以使用JSON.stringify() 和JSON.parse()的组合进行对象的复制。
如下:

const oldObj = {subject: "math", score: 82}
const newObj = JSON.parse( JSON.stringify( oldObj )  )
// newObj : {subject: "math", score: 82}

2. Object.assign()

Object.assign(target, ...sources)
参数
target --- 需要修改的目标对象
sources --- 提供属性值的源对象
返回值
修改过的target对象

const sourceObj = { name : ' apr'}
const targetObj = Object.assign( {},  sourceObj); 
// targetObj = { name : ' apr'}

3.ES6中的解构用法

在ES6中,可以使用解构...的方式,实现对象的复制。
如下:

var sourceObj = { name : ' apr'}
var targetObj = { ...sourceObj } 
// targetObj = { name : ' apr'}

以上就是几种会用到的对象的复制方法。

值得拥有!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.属性的简洁表示法 允许直接写入变量和函数 上面代码表明,ES6 允许在对象之中,直接写变量。这时,属性名为变量...
    雨飞飞雨阅读 4,849评论 0 3
  • 函数和对象 1、函数 1.1 函数概述 函数对于任何一门语言来说都是核心的概念。通过函数可以封装任意多条语句,而且...
    道无虚阅读 10,142评论 0 5
  • 属性的简洁表示法 ES6允许直接写入变量和函数,作为对象的属性和方法。 上面代码表明,ES6允许在对象之中,直接写...
    oWSQo阅读 3,456评论 0 0
  • 属性的简洁表示法 ES6允许直接写入变量和函数,作为对象的属性和方法。这样的书写更加简洁。 上面代码表明,ES6允...
    呼呼哥阅读 7,965评论 0 2
  • 第一部分 HTML&CSS整理答案 1. 什么是HTML5? 答:HTML5是最新的HTML标准。 注意:讲述HT...
    kismetajun阅读 28,078评论 1 45