JS 对象类型,基本对象类型以及引用对象类型的区别

450 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

JS 对象类型,基本对象类型以及引用对象类型的区别

分为基本对象类型和引用对象类型

基本数据类型:按值访问,可操作保存在变量中的实际的值。基本类型值指的是简单的数据段。

基本数据类型有这六种:undefined、null、string、number、boolean、symbol。

引用类型:当复制保存着对象的某个变量时,操作的是对象的引用,但在为对象添加属性时,操作的是实际的对象

引用类型值指那些可能为多个值构成的对象。引用类型有这几种:Object、Array、RegExp、Date、Function、特殊的基本包装类型(String、Number、Boolean)以及单体内置对象(Global、Math)。

JS 的数据类型

基本数据类型:字符串string,数字number,布尔boolean,数组,null,Undefined,symbol

引用数据类型:对象。

JS 的基本数据类型有哪些

JS 的基本数据类型有字符串,数字,布尔,数组,对象,Null,Undefined,基本数据类型是按值访问的,也就是说可以操作保存在变量中的实际的值

引用类型常见的对象

Object、Array、RegExp、Date、Function、特殊的基本包装类型(String、Number、Boolean) 以及单体内置对象(Global、Math)等

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

基本数据类型和引用数据类型的区别如下:

  1. 基本数据类型的值是不可变的,任何方法都无法改变一个基本类型的值,当这个变量重新赋值后看起来变量的值是改变了,但是这里变量名只是指向变量的一个指针,所以改变的是指针的指向改变,该变量是不变的,但是引用类型可以改变

  2. 基本数据类型不可以添加属性和方法,但是引用类型可以

  3. 基本数据类型的赋值是简单赋值,如果从一个变量向另一个变量赋值基本类型的值,会在变量对象上创建一个新值,然后把该值复制到为新变量分配的位置上,引用数据类型的赋值是对象引用,

  4. 基本数据类型的比较是值的比较,引用类型的比较是引用的比较,比较对象的内存地址是否相同

  5. 基本数据类型是存放在栈区的,引用数据类型同时保存在栈区和堆区