Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.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 如何在节点js中使用fork传递数组?_Javascript_Node.js_Child Process - Fatal编程技术网

Javascript 如何在节点js中使用fork传递数组?

Javascript 如何在节点js中使用fork传递数组?,javascript,node.js,child-process,Javascript,Node.js,Child Process,我有一个数组,我想把它发送给一个子进程。 但问题是我在子进程中将其作为字符串获取。 我怎样才能修好它? 谢谢 父文件 const {fork} = require('child_process'); var botsList = []; fork('./app.js', [botsList]); 子文件: var botsList = process.argv[2]; console.log(typeof botsList); app.js将收到一个字符串,但根据botsList的复杂性

我有一个数组,我想把它发送给一个子进程。 但问题是我在子进程中将其作为字符串获取。 我怎样才能修好它? 谢谢

父文件

const {fork} = require('child_process');

var botsList = [];
fork('./app.js', [botsList]);
子文件:

var botsList = process.argv[2];
console.log(typeof botsList); 

app.js
将收到一个字符串,但根据
botsList
的复杂性,您可以使用
JSON.stringify
JSON.parse

index.js
将执行以下操作:

const {fork} = require('child_process');                                                                                                                                                                

var botsList = ["botA", "botB", "botC"];

fork('./app.js', [JSON.stringify(botsList)]);
app.js
将解析参数:

let botsList = process.argv[2];                                                                                                                                                                         

try {                                                                                                       
     botsList = JSON.parse(botsList);                                                            
} catch (e) {                                                                                               
     console.log('Could not parse string as JSON');                                              
}                                                                                                                                                                                                       

console.log(botsList);                                                                              
console.log(typeof botsList);   
以及输出:


参数始终是字符串,您需要对其进行解析。