JavaScript中如何实现数组与非数组对象的深浅克隆原理详解?

2026-04-05 17:1410阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

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

JavaScript中如何实现数组与非数组对象的深浅克隆原理详解?

目录+什么是浅拷贝、深拷贝+1. 对数组进行拷贝+1.1 浅拷贝+1.2 深拷贝+2. 对非数组对象进行拷贝+2.1 浅拷贝+2.2 深拷贝+3. 整合深拷贝函数+浅拷贝:直接将存储在栈中的存储地址复制给新的变量““

目录
  • 什么是浅克隆、深克隆
  • 1.对数组进行克隆
    • 1.1 浅克隆
    • 1.2 深克隆
  • 2.对非数组对象进行克隆
    • 2.1 浅克隆
    • 2.2 深克隆
  • 3.整合深克隆函数

    什么是浅克隆、深克隆

    浅克隆:直接将存储在栈中的值赋值给对应变量,如果是基本数据类型,则直接赋值对应的值,如果是引用类型,则赋值的是地址。
    深克隆:将数据赋值给对应的变量,从而产生一个与源数据不相干的新数据(数据地址已变化)。即对象各个层级的属性。
    JavaScript中基本数据类型使用符号“=”可以进行克隆,引用数据类型使用符号“=”只是改变了变量的指向,并没有进行真正的克隆操作。

    1.对数组进行克隆

    1.1 浅克隆

    使用for循环进行浅克隆。

    阅读全文

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

    JavaScript中如何实现数组与非数组对象的深浅克隆原理详解?

    目录+什么是浅拷贝、深拷贝+1. 对数组进行拷贝+1.1 浅拷贝+1.2 深拷贝+2. 对非数组对象进行拷贝+2.1 浅拷贝+2.2 深拷贝+3. 整合深拷贝函数+浅拷贝:直接将存储在栈中的存储地址复制给新的变量““

    目录
    • 什么是浅克隆、深克隆
    • 1.对数组进行克隆
      • 1.1 浅克隆
      • 1.2 深克隆
    • 2.对非数组对象进行克隆
      • 2.1 浅克隆
      • 2.2 深克隆
    • 3.整合深克隆函数

      什么是浅克隆、深克隆

      浅克隆:直接将存储在栈中的值赋值给对应变量,如果是基本数据类型,则直接赋值对应的值,如果是引用类型,则赋值的是地址。
      深克隆:将数据赋值给对应的变量,从而产生一个与源数据不相干的新数据(数据地址已变化)。即对象各个层级的属性。
      JavaScript中基本数据类型使用符号“=”可以进行克隆,引用数据类型使用符号“=”只是改变了变量的指向,并没有进行真正的克隆操作。

      1.对数组进行克隆

      1.1 浅克隆

      使用for循环进行浅克隆。

      阅读全文