当前位置:首页 > 科技  > 软件

JavaScript 原生深拷贝方法来啦!structuredClone 闪耀登场~

来源: 责编: 时间:2024-05-08 09:17:52 88观看
导读原生的深拷贝~分享一个 JavaScript 原生的深拷贝方法 structuredClone,其实这个方法出了很久了,但是存在感一直很低~图片说这个方法前,我们先来讨论一下,常见的深拷贝都有哪些方案呢?JSON.parse & JSON.stringify()很多人

原生的深拷贝~

分享一个 JavaScript 原生的深拷贝方法 structuredClone,其实这个方法出了很久了,但是存在感一直很低~9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

说这个方法前,我们先来讨论一下,常见的深拷贝都有哪些方案呢?9MQ28资讯网——每日最新资讯28at.com

JSON.parse & JSON.stringify()

很多人会用 JSON.parse(JSON.stringify(obj))来对对象进行深拷贝操作,但是这个方式缺点太多了9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

可以看到很多数据类型都没有深拷贝成功9MQ28资讯网——每日最新资讯28at.com

数据类型9MQ28资讯网——每日最新资讯28at.com

克隆结果9MQ28资讯网——每日最新资讯28at.com

number9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

string9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

undefined9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

null9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

boolean9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

object9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Array9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Function9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

map9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Set9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Date9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Error9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Regex9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Dom节点9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

并且在对象具有环引用的情况下,这种深拷贝方式会导致报错9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

lodash.cloneDeep

lodash 的 cloneDeep也是深拷贝的手段之一,且非常完善,能成功拷贝各种数据类型9MQ28资讯网——每日最新资讯28at.com

但是大家要注意使用 lodash 时要使用 lodash-es,这样才能做到按需加载,减少不必要的代码体积9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

数据类型9MQ28资讯网——每日最新资讯28at.com

克隆结果9MQ28资讯网——每日最新资讯28at.com

number9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

string9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

undefined9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

null9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

boolean9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

object9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Array9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Function9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

map9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Set9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Date9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Error9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Regex9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Dom节点9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

window.structuredClone

全局的 structuredClone() 方法使用结构化克隆算法将给定的值进行深拷贝9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

当克隆Function、Dom节点时,会报错9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

其他数据类型可以成功拷贝~9MQ28资讯网——每日最新资讯28at.com

图片图片9MQ28资讯网——每日最新资讯28at.com

数据类型9MQ28资讯网——每日最新资讯28at.com

克隆结果9MQ28资讯网——每日最新资讯28at.com

number9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

string9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

undefined9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

null9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

boolean9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

object9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Array9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Function9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

map9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Set9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Date9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Error9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Regex9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

Dom节点9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

9MQ28资讯网——每日最新资讯28at.com

本文链接://www.dmpip.com//www.dmpip.com/showinfo-26-87254-0.htmlJavaScript 原生深拷贝方法来啦!structuredClone 闪耀登场~

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 解密 Python 的变量和对象,它们之间有什么区别和联系呢?

下一篇: 不知道这些不要说玩转了Controller接口

标签:
  • 热门焦点
Top
Baidu
map