javascript - 是否有 Multimap 数据结构的 javascript 等价物?

标签 javascript data-structures multimap

<分区>

Multimap是一种将键映射到值列表/值集的数据结构。

有没有好的、不显眼的js库实现这个数据结构?

编辑 - 我知道我可以自己“轻松”实现它,但我相信将它作为一个独立的抽象是一件好事,所以这个问题的答案不应该是“自己实现它” ".

最佳答案

由于@Esailija 仅将其作为评论发布,我会将其作为可能的答案提交。使用数组作为值的对象是可行的方法,并通过 Underscore.js 操作值.

var map = {
    foo: [1, 2, 3],
    bar: ['1', '2', '3']
};

map.foo = _.union(map.foo, [1, 4]); // map.foo -> [1, 2, 3, 4]

虽然这显然取决于您的需求,但这种方法为您提供了无处不在的通用数据结构,以及一个可以很好地处理集合和列表的库。对于大多数用途,这种方法的性能应该很好(只是不要每秒执行数百万次)。

关于javascript - 是否有 Multimap 数据结构的 javascript 等价物?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11329244/

相关文章:

javascript - 在事件处理程序中触发类方法

javascript - 页面持续刷新问题

java - 从 multimap 列表中删除元素的最佳方法

java - 如何将 NavigableMap 功能与 Guava 的 Multimap(使用 asMap())一起使用?

performance - Unordered_Map查找时间

javascript - 在加载子行时显示进度

javascript - 如何解决嵌套指令范围问题?

multithreading - 多线程读少写的高性能排序数据结构设计

python - Python 中的多元组到两对元组?

c - 使用C的栈链表的pop()方法出错