我正在学习如何使用 node.js,但在解析命令行参数时遇到问题。以下行:
node test.js --input=in.txt
Run Code Online (Sandbox Code Playgroud)
当代码到达这个命令时给出解析错误:
var fileName = JSONparse.(process.argv[2]);
Run Code Online (Sandbox Code Playgroud)
结果报错:
undefined
--input=in.txt
Syntax error: Unexpected number
Run Code Online (Sandbox Code Playgroud)
我想要做的是为输入文件创建一个可选变量。如果未在命令行中指定,则应解析为“a.txt”。
我还没有找到一种创建默认参数的简单方法,或者使用诸如 '--input=' 之类的标识符来不必担心传递参数的顺序(我知道在这种情况下使用一个参数并不重要) .
我正在尝试将Racket上的两个列表相交,但是以下代码不起作用:
(define (intersection a b)
(if (null? a)
'()
(if (contains (car a) b)
(cond (car a)(intersection (cdr a) b))
(intersection (cdr a) b))))
Run Code Online (Sandbox Code Playgroud)
结果总是以列表b中包含的列表a的第一项加上列表a的其余部分结束。例如:
a = '(1 2 3 4 5 6)
b = '( 10 20 4 30 33)
Run Code Online (Sandbox Code Playgroud)
将返回:
'(4 5 6)
Run Code Online (Sandbox Code Playgroud)
我确定包含内容正确运行,因此错误必须出在我发布的代码中。谢谢!