如何在节点js中用fork传递数组?
how to pass an array with fork in node js?
我有一个数组,我想将它发送给子进程。
但问题是我在子进程中将它作为字符串获取。
我该如何解决?
谢谢。
父文件
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);
并且输出:
我有一个数组,我想将它发送给子进程。 但问题是我在子进程中将它作为字符串获取。 我该如何解决? 谢谢。
父文件
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);
并且输出: