I am trying to use Multimap as I may have different values for same key. However I don't want entry into it when Key-value pair is already present in Multimap. But unfortunately, when I use MultiMap it is creating new entries for same key-value pair in multimap. Please let me know if I am missing something ?? code snippet is given below -
//declared MultiMap -
var Multimap = require('multimap');
var mmap = new Multimap();
//ran command on console to include multimap to project:
npm install multimap --save
//pushed data to multimap using set method
mmap.set(path, columns[1]['value']);
//checked for size of multimap
mmap.length
//printed each entry in multimap
mmap.forEachEntry(function (entry, key) {
console.log(key + "----" + entry);
});
//OUTPUT for key----value in multimap
product_tree,SBG,QuickBooks,39.0,R2----R2
product_tree,SBG,QuickBooks,39.0,R1----R1
product_tree,SBG,QuickBooks,28.0----28.0,28.0,28.0,28.0,28.0,28.0,28.0
product_tree,SBG,QuickBooks,28.0,R1----R1,R1
product_tree,SBG,QuickBooks,28.0,R7----R7
product_tree,SBG,QuickBooks,28.0,R6----R6
product_tree,SBG,QuickBooks,28.0,R5----R5
product_tree,SBG,QuickBooks,28.0,R4----R4
product_tree,SBG,QuickBooks,28.0,R3----R3
product_tree,SBG,QuickBooks,27.0----27.0,27.0,27.0,27.0,27.0,27.0,27.0,27.0,27.0,27.0
product_tree,SBG,QuickBooks,27.0,R1----R1,R1
//expected output for key----value
product_tree,SBG,QuickBooks,39.0,R2----R2
product_tree,SBG,QuickBooks,39.0,R1----R1
product_tree,SBG,QuickBooks,28.0----28.0
product_tree,SBG,QuickBooks,28.0,R1----R1
product_tree,SBG,QuickBooks,28.0,R7----R7
product_tree,SBG,QuickBooks,28.0,R6----R6
product_tree,SBG,QuickBooks,28.0,R5----R5
product_tree,SBG,QuickBooks,28.0,R4----R4
product_tree,SBG,QuickBooks,28.0,R3----R3
product_tree,SBG,QuickBooks,27.0----27.0
product_tree,SBG,QuickBooks,27.0,R1----R1
Would appreciate if I get pointer about where am I doing mistake.
Thanks in advance.
you can put condition to check if the key-value pair already present in multimap
if(!mmap.has(path, columns[1]['value']){
mmap.set(path, columns[1]['value']);
}