基于数组构建的JavaScript对象
根据我的阅读资料,在JavaScript中:基于数组构建的JavaScript对象,javascript,arrays,hash,hashtable,javascript-objects,Javascript,Arrays,Hash,Hashtable,Javascript Objects,根据我的阅读资料,在JavaScript中: 对象=哈希表,它们是基于数组构建的。然而,通常说数组是JS中的对象。这两个概念是如何协调的?对象不是构建在数组上的。对象有自己的优化 一般而言: 对象用于“结构”、具有可预测“形状”的结构和预先已知的键(即使它们可以与动态键一起使用,也应该使用贴图。请参见下文) 数组用于列表(以及队列和堆栈)、键为数字或元素顺序重要的结构。数组是“特殊”对象,而不是相反。(与任何对象一样,您可以在数组中放置基于字符串的属性。但请不要这样做) 用于哈希表/字典,即键
对象=哈希表,它们是基于数组构建的。然而,通常说数组是JS中的对象。这两个概念是如何协调的?对象不是构建在数组上的。对象有自己的优化 一般而言:
- 对象用于“结构”、具有可预测“形状”的结构和预先已知的键(即使它们可以与动态键一起使用,也应该使用贴图。请参见下文)
- 数组用于列表(以及队列和堆栈)、键为数字或元素顺序重要的结构。数组是“特殊”对象,而不是相反。(与任何对象一样,您可以在数组中放置基于字符串的属性。但请不要这样做)
- 用于哈希表/字典,即键是动态的且事先未知的结构
typeof[]//返回object
或thisnew String()
我宁愿说JS中的所有内容都是基于对象构建的。myArr=['this'、'is'、'an'、'array']
实际上是{0:'this',1:'is',2:'an',3:'array'}
幕后的。