如何使用Node.JS在哈希表中为每个键存储多个值?

时间:2013-10-03 01:37:14

标签: javascript node.js hashmap

在javascript中,我有一个键值对的哈希映射,如:

"team", "aemt"
"meat", "aemt"
"car", "acr"

我希望将所有匹配值与字符串的长度一起存储,如下所示:

{4, {"team","meat"}}
{3, {"car"}

我将如何做到这一点?

1 个答案:

答案 0 :(得分:2)

不需要按长度划分集合,散列算法应该能够自己处理。只有你要按照长度对单词进行排序才是可取的。

  

在哈希表中为每个键存储多个值

你做不到。但是,您可以为每个键存储一个字符串数组。

var words = ["team", "meat", "car"],
    map = {};
for (var i=0; i<words.length; i++) {
    var key = words[i].toLowercase().split('').sort().join('');
    if (key in map)
        map[key].push(words[i]);
    else
        map[key] = [ words[i] ];
}