Javascript 类型介绍

原始值(Primitive)

  • Null: 没有对象
  • Undefined: 没有值
  • Boolean
  • Number
  • BigInt
  • String
  • Symbol

对象包装类型

除了 null 和 undefined,所有原始类型都有它们相应的对象包装类型,这为处理原始值提供可用的方法。 当在原始值上访问属性时,JavaScript 会自动将值包装到相应的包装对象中,并访问对象上的属性。

Object

在 JavaScript 中,对象是唯一可变的值。事实上,函数也是具有额外可调用能力的对象

属性

属性键要么是字符串类型,要么是 symbol。属性值可以是任何类型的值,包括其他对象,从而可以构建复杂的数据结构。

  • 数据属性: 数据属性将键与值相关联
  • 访问器属性: 将键与两个访问器函数(get 和 set)像关联,以获取或者存储值。

索引类集合:数组和类型化数组

  • Array
  • TypedArray
    • Float32Array
    • Int8Array

带键的集合

  • Map
  • WeakMap: WeakMap 的 key 只能是 Object 类型。 原始数据类型 是不能作为 key 的(比如 Symbol)。
  • Set
  • WeakSet: 只能是对象的集合,而不能像 Set 那样,可以是任何类型的任意值。(是不可枚举的)

Object 和 Map 的区别:

  1. Object的键名只可以是String或者Symbol, 但是 Map 不受限制
  2. Object 上的属性访问是使用原型链的方式访问的,访问不存在的属性时会有性能问题

强制类型转换

TODO


references:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值