Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/416.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/43.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 Node.js调用函数使用参数构成Node CMD_Javascript_Node.js - Fatal编程技术网

Javascript Node.js调用函数使用参数构成Node CMD

Javascript Node.js调用函数使用参数构成Node CMD,javascript,node.js,Javascript,Node.js,我使用下面的代码调用javascript文件中编写的函数,这确实调用了该函数,但它不会随附参数: 要从CMD调用函数,请键入“foo” 改为键入global.foo(数据) 并将foo更改为: global.foo = function(data) { console.log("foo was called " + data); }; 如果不想使用global.foo,请添加以下行: var foo = global.foo; 然后在代码末尾添加这个命令,用命令行中的参数调用它 foo(

我使用下面的代码调用javascript文件中编写的函数,这确实调用了该函数,但它不会随附参数:

要从CMD调用函数,请键入“foo”

改为键入
global.foo(数据)

并将foo更改为:

global.foo = function(data) {
  console.log("foo was called " + data);
};
如果不想使用global.foo,请添加以下行:

var foo = global.foo;
然后在代码末尾添加这个命令,用命令行中的参数调用它

foo(process.argv[0]);
Node <file> <argument>
和从命令行

foo(process.argv[0]);
Node <file> <argument>
节点
我的解决方法:

var readline = require('readline');

process.stdin.on("data", function(input){
    var fn = input.toString().trim();
    var command = fn.split(' ')[0];
    var args = fn.substr(fn.indexOf(' ') + 1);
    if (command == "foo"){
        console.log(args);
    }
});

你希望它通过什么论点?为什么?这会导致它找不到函数foofoo或global.foo?这应该行得通,我刚在我的机器上运行过。如果您只想使用foo,请参阅我的编辑。您是如何调用该函数的?如果我键入'foo',它将调用该函数,id我键入'foo test',我将找不到foo函数。我使用
global.foo(“hello”)
调用它。如果我想使用变量,我会添加
var data=“hello”到文件(或在节点内运行该行代码),然后键入
global.foo(数据)