JS中基本类型和引用类型分别指的的是什么?有何区别?

基本类型和引用类型

ECMAScript包含两个不同类型的值:基本类型值和引用类型值。

  • 基本类型值指的是简单的数据段;
  • 引用类型值指由多个值构成的对象。

在将一个值赋给变量时,解析器必须确定这个值是基本类型值还是引用类型值。第 3 章讨论了 5 种基本数据类型:Undefined、Null、Boolean、Number 和 String。这 5 种基本数据类型是按值访问的,因为可以操作保存在变量中的实际的值。

引用类型的值是保存在内存中的对象。与其他语言不同,JavaScript 不允许直接访问内存中的位置,也就是说不能直接操作对象的内存空间。在操作对象时,实际上是在操作对象的引用而不是实际的对象。为此,引用类型的值是按引用访问的。

总结

当我们把变量赋值给一个变量时,解析器首先要做的就是确认这个值是基本类型值还是引用类型值。

基本类型: string,number,boolean,null,undefined

引用类型: Function,Array,Object

基本类型和引用类型的区别

访问方式的不同

访问方式
基本类型引用类型
操作和保存在变量的实际的值值保存在内存中,js不允许直接访问内存,在操作的时候,操作的是对象的引用

存储位置的不同

存储的位置
基本类型引用类型
保存在栈区img引用存放在栈区,实际对象保存在堆区img

参考资料

基本类型和引用类型的区别

JavaScript高级程序设计(第3版)

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值