常见数据类型(哪些是基本,哪些是引用,你知道这两种有什么区别吗)

1.        

        常见的基本数据类型:Number、String 、Boolean、Null和Undefined。

        引用数据类型:对象、数组、函数。

2.  区别:

        

  • 内存分配与访问机制的不同:

        1)基本数据类型:存储在栈内存中,可以直接访问到该变量的值。

        2)引用数据类型:存储在堆内存中。意思是存储在栈内存中该变量的值是该对象在堆内存中的地址,它相当于一个指针,根据该指针去找到该对象的值,这就是传说中的按引用访问。

  • 复制变量时的不同:

        1)基本数据类型:将一个变量的值复制给另一个变量时,只是将原变量的副本赋值给新变量,这俩个变量的值是相互独立的。

        2)引用数据类型:将一个变量复制给另一个变量时,会把原变量中存储的对象内存地址赋值给新变量,此时这两个变量都指向了堆内存中的同一个对象,他们中任何一个作出的改变都会反映在另一个身上。【浅拷贝】

null和undefined区别

  • null 只有一个值,是null,不存在的对象,表示一个空对象指针
  • undefined只有一个值,是undefined。没有初始化。undefined是从null中派生出来的
  • 简单理解就是:undefined是没有定义的,null是定义了但是为空!

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
数据类型引用类型是编程语言中的两种不同的数据类型基本数据类型是简单的数据类型,它们的值直接存储在变量中。常见基本数据类型有Number、String、Boolean、Null和Undefined。这些类型的值可以直接操作和访问。 引用类型是由对象组成的复杂数据类型,它们的值是保存在堆内存中的对象。引用类型包括Object、Array、Function、Date等。引用类型的值是对对象在内存中的引用,而不是实际的值。通过引用,我们可以访问和修改对象的属性和方法。 在方法中定义的非全局基本数据类型变量的具体内容是存储在栈中的。在方法中定义的非全局基本数据类型变量,调用方法时作为参数是按数值传递的,默认值是0。这意味着当我们将一个基本数据类型的变量作为参数传递给方法时,方法会获得该变量的副本,而不是直接引用它。因此,对于基本数据类型,每个变量都有自己的独立值。相反,引用类型的变量保存的是对象的引用,当将一个引用类型的变量作为参数传递给方法时,方法会获得该变量引用的对象。因此,对于引用类型,多个变量可以引用同一个对象,对一个变量的修改会影响其他引用该对象的变量。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [JavaScript基本数据类型引用数据类型区别](https://blog.csdn.net/weixin_42103706/article/details/83820246)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [基本数据类型引用数据类型](https://blog.csdn.net/m0_53881899/article/details/126001122)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值