JavaScript之 值类型 和 引用类型 Better

值类型

特点:

  变量在中直接保存

常见的 值类型

const s = 'abc'
const n = 100
const b = true
const s = Symbol('s')

特殊的 值类型

let a // undefined
const u = null // 有疑虑,有的说是特殊引用类型,指针指向为空地址的。但红宝书中说明为值类型。

引用类型

特点:

  变量在中保存堆的内存地址

常见的 引用类型

const obj = { x: 100 }
const arr = ['a', 'b', 'c']
function fn() {} // 特殊引用类型,因为不用于存储数据,所以没有“拷贝、复制函数”这一说

typeof 运算符

能判断:

  所有常见值类型('string'、'number'、'boolean'、'symbol')

  特殊值类型('undefined')

       引用类型('function')

不能判断:

  对象数组null。因为这三个都被识别为  ==>  'object'

  能识别引用类型为'object',不能继续判断(数组 和 对象)

  识别特殊值类型null为'object',所以不能判断(null)

原文地址:https://www.cnblogs.com/huangtq/p/14454242.html