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);
以及输出:
参数始终是字符串,您需要对其进行解析。