JSON 复制
const json = JSON.parse(JSON.stringify( jsonobj ))
- 缺点:不能有 undefined
递归
- 占用内存,影响性能
Immutable.js
- 每次修改一个 Immutable 对象时都会创建一个新的不可变的对象,在新对象上操作并不会影响到原对象的数据。
- 下载
npm i immutable
- 引入
import {Map} from 'immutable'
- 使用
import { Map } from 'immutable'
var obj = {
name:"kerwin",
age:100
}
var oldobj = Map(obj)
var newobj = oldobj.set('name', '张三')
var old_type_obj = oldobj.toJS()
var new_type_obj = newobj.toJS()
console.log(oldobj, newobj,old_type_obj, new_type_obj)

print