• 【学习笔记20】JavaScript数据类型之间的区别


    一、数据类型

    • 基本数据类型
    • 复杂数据类型 (function; object; array)

    二、存储的区别

    • 基本数据类型: 存储在栈内存中, 变量内部就是实际的值
    • 引用数据类型: 变量存储在栈内存中, 变量内部存储的是指向堆内存的地址(对象实际的值, 存储在堆内存中)

    三、赋值的区别

    1. 基本数据类型: 是的传递
         可以理解为, 将我自身的值复制一份,给到另一个变量, 后续修改另一个变量时,与我自身没有任何关系
    2. 引用数据类型: 是地址的传递
         可以理解为, 将自身的地址复制一份,给到另一个变量, 后续修改互相会有影响

    1.         // 基本数据类型
    2.         var a = 100
    3.         var b = a
    4.         b = b * 2
    5.         console.log(a)   // 100
    6.         console.log(b)   // 200
    1.         // 复杂数据类型
    2.         var a = {
    3.             name: 'QF'
    4.         }
    5.         var b = a
    6.         b.name = '修改后的name'
    7.         console.log(a)
    8.         console.log(b)


    四、比较的区别

    • 基本数据类型:比较时, 是拿变量实际的值, 去做对比
    • 引用数据类型:比较时, 是拿引用地址做对比, 判断是不是执行一个地址
    1.      // 基本数据类型
    2.         var a = 100
    3.         var b = 200
    4.         console.log(a === b) // false
    1.         // 复杂数据类型
    2.         var c = {
    3.             name: 'QF'
    4.         }
    5.         var d = c
    6.         var f = {
    7.             name: 'QF'
    8.         }
    9.         console.log(c === d)    // true
    10.         console.log(c === f)    // false

     五、传参的区别

    • 基本数据类型:是值的传递, 将自身的值复制一份,传递给函数的形参
    • 引用数据类型:是地址的传递, 将自身的地址复制一份,传递给函数的形参
    1.     var a = 100
    2.         var b = {
    3.             name: 'QF'
    4.         }
    5.         function fn(x, y) {
    6.             x = 500
    7.             y.name = 'QFQQQQQQQQQQ'
    8.         }
    9.         fn(a, b)
    10.         console.log(a)      // 100
    11.         console.log(b.name) // QFQQQQQQQQQQ


     

  • 相关阅读:
    Emacs之高亮显示超过80个字符部分(一百三十)
    Linux 下指定端口开放访问权限
    Spring事务属性
    思迈特受邀参加工信部等权威机构行业盛会,探讨AI领域前沿技术
    森林野火故事2.0:一眼看穿!使用 Panel 和 hvPlot 可视化 ⛵
    基于docker-k8s的web集群
    微信小程序-常用的视图容器类组件
    【2022 CCF BDCI 文心大模型创意项目】中秋款文心带你轻松搞定MV制作
    赶紧进来!!!教你C语言实现扫雷小游戏(文章最后有源码!!!)
    【牛客刷题-算法】NC151 最大公约数
  • 原文地址:https://blog.csdn.net/m0_58190023/article/details/128026854