ListOrderedMap / ArrayMap就像Javascript中的数据结构一样

时间:2011-07-28 00:45:37

标签: javascript data-structures array-map

我正在寻找像ListOrderedMap这样的JavaScript数据结构: http://commons.apache.org/collections/apidocs/org/apache/commons/collections/map/ListOrderedMap.html

E.g。它需要能够在索引处添加对象,获取对象的索引,并能够通过它的id查找对象。

我找到的所有库都无法在某个索引处添加对象。

2 个答案:

答案 0 :(得分:1)

这样的东西? Javascript具有出色的阵列和键控集合设施及其组合。

function LAM() {
    this.ids = {}
    this.indexes = []
}

LAM.prototype.put = function(myObj, id, ix) {
   this.ids[id]  = myObj
   this.indexes[ix] = id
}

LAM.prototype.getByIndex = function(ix) {
    return this.ids[this.indexes[ix]]
}

在实践中:

? a = new LAM

? a.put("jhgf", "WE", 3)

? a.ids.WE
    jhgf

? a.getByIndex(3)
    jhgf

答案 1 :(得分:0)

由于Javascript没有这样的数据结构,另一种解决方案是使用GWT并使用ListOrderedMap.java的Java源代码。