JS 引用、浅拷贝、深拷贝 区别

引用#

引用即是存放在堆区的复杂数据,被另外一个变量名再引用了一次

  • 在任意一个被赋值的变量名下改复杂数据的值,值都会改变

浅拷贝#

  • 浅拷贝一个复杂类型,会在堆区另外新建一个数据,新的变量名指向新的数据
  • 堆区的数据里如果有嵌套复杂数据类型,不会新建嵌套里面的数据,只复制第一层

深拷贝#

不管复制数据类型嵌套多少复杂类型,都能完全复制

  • js的实现深拷贝有三种方法
    • 1.利用递归函数<函数自己套自己>遍历赋值

    • 2.使用别人写好的代码,例如(js的lodash库)

    • 3.利用JSON字符串转换

posted @   1502god  阅读(39)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
-->
点击右上角即可分享
微信分享提示
主题色彩