使用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'}
以上就是几种会用到的对象的复制方法。
值得拥有!