返回顶部
首页 > 资讯 > 前端开发 > VUE >es6解构是不是深拷贝
  • 573
分享到

es6解构是不是深拷贝

2024-04-02 19:04:59 573人浏览 独家记忆
摘要

这篇“es6解构是不是深拷贝”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“es6解构是不是

这篇“es6解构是不是深拷贝”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“es6解构是不是深拷贝”文章吧。

es6解构不是深拷贝。若解构的原对象是一维数组或对象,那么解构就是深拷贝,若解构的原对象是多维数组或对象,那么解构就是浅拷贝,因为解构不能对多维数组达到深拷贝的效果,所以解构不能算是深拷贝,应是浅拷贝。

教程操作环境:windows10系统、ECMAScript 6.0版、Dell G3电脑。

es6解构是深拷贝吗

关于ES6中的解构赋值的知识点,想必大家都不陌生。所谓解构赋值就是利用一种模式来快速从目标结构中取出数据的方案,例如:
es6解构是不是深拷贝
通过解构,我们很轻松的就从数组和对象中取出了我们想要的数据。但是,可能大家会问,这与深拷贝与浅拷贝又有什么关系呢?

咱们,先回顾一下关于深拷贝和浅拷贝,

所谓的浅拷贝和深拷贝:浅拷贝是在在拷贝过程中,遍历时那部分为对象/数组类型指向原来的地址,而深拷贝,则是完全开辟新的内存地址。也就是说,

  • 深拷贝:修改新变量的值不会影响原有变量的值。默认情况下基本数据类型(number,string,null,undefined,boolean)都是深拷贝。

  • 浅拷贝:修改新变量的值会影响原有的变量的值。默认情况下引用类型(object)都是浅拷贝。

那么,在解构中,究竟是深拷贝还是浅拷贝呢?

es6解构是不是深拷贝
在上述代码中,我们分别对数组和对象进行解构,然后又修改了解构之后的变量的值,然后分别打印变量和原数组和对象,结果如下:

es6解构是不是深拷贝
我们发现,原数组和对象的数据并没有改变,是不是就说明解构赋值就是深拷贝了呢??

我们把例子稍微修改一下,代码如下:

es6解构是不是深拷贝
我们为对象新增了一个data属性,data的数据为一个数组,然后解构之后,我们修改了data的数据,结果如下:

es6解构是不是深拷贝
我们发现,解构出来的变量data的改变引起了原来数据的改变,也就是所,解构赋值其实依然是浅拷贝。

以上就是关于“es6解构是不是深拷贝”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网VUE频道。

--结束END--

本文标题: es6解构是不是深拷贝

本文链接: https://lsjlt.com/news/97539.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • es6解构是不是深拷贝
    这篇“es6解构是不是深拷贝”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“es6解构是不是...
    99+
    2024-04-02
  • es6实现深拷贝的方法是什么
    ES6实现深拷贝的方法有多种,以下是其中一种常用的方法:1. 使用`JSON.parse()`和`JSON.stringify()`...
    99+
    2023-10-09
    es6
  • 什么是深拷贝和浅拷贝
    深拷贝和浅拷贝分别是指:深拷贝是指拷贝对象的具体内容,二内存地址是自主分配的,拷贝结束之后俩个对象虽然存的值是一样的,但是内存地址不一样,俩个对象页互相不影响,互不干涉。浅拷贝是指对内存地址的复制,让目标对象指针和源对象指向同一片内存空间。...
    99+
    2023-10-29
  • C++拷贝构造函数(深拷贝与浅拷贝)详解
    对于普通类型的对象来说,它们之间的复制是很简单的,例如:int a=88;int b=a; 而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝...
    99+
    2022-11-15
    拷贝构造函数 深拷贝 浅拷贝
  • 什么是Java浅拷贝和深拷贝
    这篇文章主要讲解了“什么是Java浅拷贝和深拷贝”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“什么是Java浅拷贝和深拷贝”吧!问题“如果你有一个对象, 并...
    99+
    2024-04-02
  • JavaScript深拷贝与浅拷贝是什么
    这篇文章主要介绍了JavaScript深拷贝与浅拷贝是什么,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1 浅拷贝概念深拷贝和浅拷贝是只针对Object和Array这样的引用...
    99+
    2023-06-29
  • js中slice属于是深拷贝还是浅拷贝
    这篇文章主要介绍了js中slice属于是深拷贝还是浅拷贝,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。JavaScript是什么JS是JavaScript的简称,它是一种直译...
    99+
    2023-06-14
  • Java对象深拷贝详解(List深拷贝)
    1、Java中拷贝的概念 在Java语言中,拷贝一个对象时,有浅拷贝与深拷贝两种 浅拷贝:只拷贝源对象的地址,所以新对象与老对象共用一个地址,当该地址变化时,两个对象也会随之改变。 深拷贝:拷贝对象的所有值,即使源对象发生任何改变,拷贝的值...
    99+
    2023-09-04
    java
  • Java深拷贝与浅拷贝的区别是什么
    这篇文章主要介绍“Java深拷贝与浅拷贝的区别是什么”,在日常操作中,相信很多人在Java深拷贝与浅拷贝的区别是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java深拷...
    99+
    2024-04-02
  • js的深拷贝是什么
    这篇文章主要为大家展示了“js的深拷贝是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“js的深拷贝是什么”这篇文章吧。js深拷贝在讲正题之前我们要先了解数据存储的方式数据存储方式在讲之前我们...
    99+
    2023-06-25
  • js深拷贝和浅拷贝的深入讲解
    目录浅拷贝实现方法方法一:Object.assign方法二:扩展运算符方式方法三:concat和slice 浅拷贝数组深拷贝实现方法方法一:乞丐版(JSON.stringify和JS...
    99+
    2024-04-02
  • Java的深拷贝和浅拷贝深入了解
    关于Java的深拷贝和浅拷贝,简单来说就是创建一个和已知对象一模一样的对象。可能日常编码过程中用的不多,但是这是一个面试经常会问的问题,而且了解深拷贝和浅拷贝的原理,对于Java中的...
    99+
    2024-04-02
  • Linux中深拷贝与浅拷贝以及写时拷贝是什么意思
    这篇文章主要讲解了“Linux中深拷贝与浅拷贝以及写时拷贝是什么意思”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Linux中深拷贝与浅拷贝以及写时拷贝是什么意思”吧!假设B复制了A,当修改...
    99+
    2023-06-15
  • php中深拷贝和浅拷贝的区别是什么
    本教程操作环境:windows10系统、PHP7.1版、DELL G3电脑php中深拷贝和浅拷贝的区别是什么先说一下深拷贝和浅拷贝通俗理解深拷贝:赋值时值完全复制,完全的copy,对其中一个作出改变,不会影响另一个浅拷贝:赋值时,引用赋值,...
    99+
    2018-03-25
    PHP
  • JavaScript中浅拷贝和深拷贝的区别是什么
    本篇文章为大家展示了JavaScript中浅拷贝和深拷贝的区别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。前言1. 基础数据类型: undefined、bo...
    99+
    2024-04-02
  • 在java中深拷贝和浅拷贝区别是什么
    在java中深拷贝和浅拷贝区别:浅拷贝是指向被复制的内存地址,而深拷贝是创建新的内存地址用于存放复制的对象。浅拷贝对于引用类型的属性只是引用原对象的内存地址,而深拷贝是所有属性都创建新的对象。...
    99+
    2024-04-02
  • Java中的深拷贝和浅拷贝是什么意思
    这篇文章主要讲解了“Java中的深拷贝和浅拷贝是什么意思”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java中的深拷贝和浅拷贝是什么意思”吧! 一、前言拷贝这个词想必大家都很熟悉...
    99+
    2023-06-15
  • python中深拷贝和浅拷贝的区别是什么
    python中深拷贝和浅拷贝的区别是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。先深拷贝和浅拷贝都是对象的拷贝,都会生成一个看起来相同的对象,他们本质的区别是拷贝出来的对...
    99+
    2023-06-19
  • C++构造函数的类型,浅拷贝与深拷贝详解
    目录一、无参构造函数二、含参构造函数三、拷贝构造函数四、深拷贝和浅拷贝总结一、无参构造函数 1.如果没有定义构造函数,则系统自动调用此默认构造函数,且什么都不做。 2.如果用户自定义...
    99+
    2024-04-02
  • JavaScript中深拷贝与浅拷贝详解
    目录1 浅拷贝概念2 深拷贝概念3 浅拷贝的实现方式3.1 Object.assign()3.2 Array.prototype.concat()3.3 Array.pro...
    99+
    2024-04-02
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作