博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

vue实现深拷贝

Posted on 2021-09-02 14:17  地霊殿~三無  阅读(784)  评论(0编辑  收藏  举报

一、实现方式

用json.stringify()将数组转化成json格式,再用json.parse()转换成JavaScript对象

let a= []

this.obj=JSON.parse(JSON.stringify(a))

 

二、 补充说明

如果数据的结构比较简单,只有一层,那也可以用slice,concat方法,他们都是不完全的深拷贝,

只能将第一层的属性独立出去,拥有单独的内存空间,但从第二层开始,属性还是共用同个地址的。

 

三、 vue有现成的插件lodash

用法

安装
npm i -lodash

引入
import _ from 'lodash';

使用
let a = []

const b = _.cloneDeep(a)

 

ps: 随便记录下来的,如有侵权请私信我

 

Live2D