JS直接输出到数据库?

时间:2016-03-18 18:12:37

标签: json node.js mongodb

须藤代码:

function findAllPaths(allStarts){
    function makePath(start){
        var path = [{"1,1" : 1}, {"1,2" : 2}, {"2,2" : 3},{"2,1" : 4}]
        return path;
    }
    var solutions = [];
    for(i=0;i<allStarts.length;i++){
         solutions.push(makePath(allStarts[i]));
    }
    return solutions;
}
console.log(findAllPaths(1,1));

// Every time the code runs, it outputs thousands to millions of paths.

有没有办法直接在mongo中运行js脚本?

我的JS文件生成带有结果的JSON对象。我尝试在节点中运行脚本,将输出保存为.txt文件。最终它以错误终止:

  

&lt; ---最后几个GC ---&gt;

     

100501 ms:Scavenge 1413.8(1457.9) - &gt; 1413.8(1457.9)MB,30.1 / 0   ms(自上次GC以来的1步+ 3.4 ms)[分配失败]   [增量标记延迟标记扫描]。 102369 ms:标记扫描   1413.8(1457.9) - &gt; 1413.8(1457.9)MB,1867.8 / 0 ms(自开始标记以来,步长为4.1毫秒+ 4.1毫秒,最大步长为3.4毫秒)[最后的手段gc]。
  104270 ms:标记扫描1413.8(1457.9) - &gt; 1413.8(1457.9)MB,1901.7 /   0毫秒[最后的手段gc]。

     

&lt; --- JS stacktrace ---&gt;

     

==== JS堆栈跟踪======================================== =

     

安全上下文:0x1b9a709b4629       1:setPrototypeOf [native v8natives.js:〜653] [pc = 0x196157b79485](这= 0x1b9a70990fa9,J = 0x1ba6e8004101,am = 0xb24ead25bf9)       2:log [console.js:~35] [pc = 0x196157b784e8](这= 0x38b6577c5a19)       3:参数适配器框架:1 ...

我想将我的JSON保存到mongodb,而不是使用输出文件。如果没有先在Node中运行代码,是否可以这样做?

1 个答案:

答案 0 :(得分:0)

有两种选择:您可以使用Mongo Shell scripts或Node.js脚本。

Mongo Shell脚本可以直接在Mongo Shell中运行,也可以从文件中加载。

在Node.js脚本中,您可以使用MongoDB packagesofficial driver之一。