Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何从Mongoshell运行js文件_Javascript_Mongodb - Fatal编程技术网

Javascript 如何从Mongoshell运行js文件

Javascript 如何从Mongoshell运行js文件,javascript,mongodb,Javascript,Mongodb,我的js文件包含以下代码: use testdb; var json = ["{\"Asset \":\"MiSeq\",\"Serial No\":\"4398\"}","{\"Asset \":\"MiSeq\",\"Serial No\":\"4398\"}"]; setInterval(function(){ var values = json, valueToUse = values[Math.floor(Math.random() * values.len

我的js文件包含以下代码:

use testdb;   
var json = ["{\"Asset \":\"MiSeq\",\"Serial No\":\"4398\"}","{\"Asset \":\"MiSeq\",\"Serial No\":\"4398\"}"];

   setInterval(function(){ var values = json,
       valueToUse = values[Math.floor(Math.random() * values.length)];
   db.testData.insert(valueToUse);
    }, 1000);
当我尝试通过以下方式使用我的Mongo shell加载此js文件时:

load(d://insertJson.js);
我知道这将是无限循环,但我没有看到在mongodb中插入任何数据


我的方法错了吗?

如果在MongoDb shell中执行setInterval,您会得到:ReferenceError:setInterval未定义

似乎您不能在mongodb shell中使用它

也许你可以使用while循环,但我不知道你怎么能睡1000毫秒。mongodb shell中有一个sleep函数,但我认为这不是您想要的:

是一个计时器方法,由web浏览器/UI中的标准Javascript窗口对象提供。mongo外壳不包括窗口对象;最接近的等价物是一个while循环,按照建议使用sleep。sleep database命令强制数据库阻止所有操作。那不是你想要的。mongo shell中的sleep javascript函数没有问题