如何实现JavaScript中的深拷贝和浅拷贝,并详细解释其区别?

2026-04-03 06:430阅读0评论SEO资源
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1074个文字,预计阅读时间需要5分钟。

如何实现JavaScript中的深拷贝和浅拷贝,并详细解释其区别?

目录一. 基本类型数据复制二. 引用类型数据复制

1.浅拷贝

2.深拷贝

说明:数据复制离不开数据类型,在JS中数据类型分为基本类型和引用类型。基本类型:number,boolean,string

目录
  • 一. 基本类型数据拷贝
  • 二. 引用类型数据拷贝
    • 1、浅拷贝
    • 2、深拷贝

说道数据拷贝就离不开数据类型,在JS中数据类型分为基本类型和引用类型 基本类型:

number, boolean,string,symbol,bigint,undefined,null

引用类型:

object 以及一些标准内置对象 Array、RegExp、String、Map、Set..

一. 基本类型数据拷贝

基本类型数据都是值类型,存储在栈内存中,每次赋值都是一次复制的过程

var a = 12; var b = a;

二. 引用类型数据拷贝

1、浅拷贝

只拷贝对象的一层数据,再深处层次的引用类型value将只会拷贝引用 实现方式:

1.Object.assign() 和 ES6的拓展运算符

通常我们用 Object.assign() 方法来实现浅拷贝。 Object.assign()用于将所有可枚举属性的值从一个或多个源对象分配到目标对象。它将返回目标对象。

阅读全文

本文共计1074个文字,预计阅读时间需要5分钟。

如何实现JavaScript中的深拷贝和浅拷贝,并详细解释其区别?

目录一. 基本类型数据复制二. 引用类型数据复制

1.浅拷贝

2.深拷贝

说明:数据复制离不开数据类型,在JS中数据类型分为基本类型和引用类型。基本类型:number,boolean,string

目录
  • 一. 基本类型数据拷贝
  • 二. 引用类型数据拷贝
    • 1、浅拷贝
    • 2、深拷贝

说道数据拷贝就离不开数据类型,在JS中数据类型分为基本类型和引用类型 基本类型:

number, boolean,string,symbol,bigint,undefined,null

引用类型:

object 以及一些标准内置对象 Array、RegExp、String、Map、Set..

一. 基本类型数据拷贝

基本类型数据都是值类型,存储在栈内存中,每次赋值都是一次复制的过程

var a = 12; var b = a;

二. 引用类型数据拷贝

1、浅拷贝

只拷贝对象的一层数据,再深处层次的引用类型value将只会拷贝引用 实现方式:

1.Object.assign() 和 ES6的拓展运算符

通常我们用 Object.assign() 方法来实现浅拷贝。 Object.assign()用于将所有可枚举属性的值从一个或多个源对象分配到目标对象。它将返回目标对象。

阅读全文