JS Object Type

本文深入解析JavaScript中的对象类型,包括数据属性和访问器属性的特性,如默认属性值,并探讨对象的内部方法和内部插槽的概念,帮助理解JS对象行为的底层原理。同时结合MDN资源,辅助学习属性的定义与访问。
摘要由CSDN通过智能技术生成

JS Object Type

JS中的对象(Object)是比较复杂的. 在ECMA中的定义还是比较清晰的;
这里翻译一下, 分享给大家.

因为本节内容有许多的表格, 我有翻译, 但也给了大家链接, 原版的可以自己查阅.

原文地址: ECMAScript Object Type

The Object Type

对象(Object) 是属性的逻辑上的集合(collection).
每个一个属性(property) 不是 数据属性(data property) 就是 访问器属性 (accessor property)
数据属性的key值与ECMAScript语言的值和一系列布尔类型(Boolean)的特征(attributes)相关联. (后面有解释)

访问器属性的key值与一个或两个访问器函数以及一系列布尔类型(Boolean)的特征(attributes)相关联.
访问器函数被用于存储和查询相关联的属性的ECMAScript语言值.

属性(Properties) 通过 key 识别.

一个属性的key 有两种类型

  • String (包括空字符串)
  • Symbol

属性名是一个属性键,它是一个字符串值。

ECMAScript语言值 就是 JS 中的数据值, 例如 null, undefined , object 等等

一个整型的索引(index)是一个 String-valued 的属性key, 它是规范的数字字符串, 并且它的数字值范围是 +0(正数0) 和 2^53 -1 之间.

一个数组的索引是一个整数索引, 它的范围是在 +0 到 2^32 -1 之间.

如果, 使用数字作为key, 会默认转成字符串. 但是, 在数据超过 2^53 -1 时, 会使用科学计数法.

var q = {
   
    8390812903912839012903891839018390129381938912083918390131830912839: 'hello'
}
// undefined
q
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值