在node.js集合字典中交换键值

时间:2016-11-06 00:43:13

标签: node.js dictionary collections collectionsjs

我正在使用这个node.js集合模块。 http://www.collectionsjs.com/

我想将密钥与集合字典中的值交换。

为了说明,这是原始字典。

"use strict";
var Dict = require("collections/dict");

var Data_type = new Dict(
    {
        "00": "DATA_0",
        "01": "DATA_1",
        "02": "DATA_2",        
    });

交换后,新词典将如下所示;

var Data_type_swapped = new Dict(
    {
        "DATA_0": "00",
        "DATA_1": "01",
        "DATA_2": "02",        
    });

原始字典中没有重复的值。

我正在使用node.js v6。

1 个答案:

答案 0 :(得分:1)

我不熟悉这个库,但是我浏览了文档并提出了这个:

let Dict = require('collections/dict');
let d = new Dict({ 'key1': 'value1', 'key2': 'value2' });

d.keys().forEach(key => {
    d.set(d.get(key), key);
    d.delete(key); // This could cause trouble if your value is the same as your key
});

迭代所有键,添加由当前键的值标识的新条目,设置其值,然后删除旧键