【发布时间】:2018-05-05 10:11:13
【问题描述】:
使用对象字面量作为哈希表是一种好习惯吗?即使用属性名称作为键来获取特定的映射值。
例如:
var colorArray = [
{ code: "#4286f4", name: "Blue" },
{ code: "#fc4d02", name: "Red" }
]
var hashTable = {}
colorArray.forEach(color => {
hashTable[color.code] = color.name
})
这对于对象字面量是否可以接受,或者是否有一种模式可以更好地处理 JavaScript 中的哈希映射?
【问题讨论】:
-
我认为这更像是一个代码审查问题,而不是堆栈溢出问题。
-
没有 JSON 对象之类的东西。 JSON 是一种文本数据格式。但是使用对象字面量作为 hashmap 是常见的做法
-
请注意,使用对象作为 hashmap 是一种完全合法的模式,但是如果你可以使用 es6,那么内置的
Map类型也是可用的。 -
是的,它是可序列化的,而且速度非常快,不像地图。对于“toString”、“hasOwnProperty”等,您需要注意一些隐式属性...
标签: javascript hash hashtable