[英]Parsing multiple arguments from the command line Node.js/js
我正在嘗試編寫一個程序,該程序接受任意數量的命令行參數,在本例中為字符串並反轉它們,然后將它們輸出到控制台。 這是我到目前為止所擁有的:
let CL = process.argv.slice(2);
let extract = CL[0];
function reverseString(commandInput) {
var newString = "";
for (var i = commandInput.length - 1; i >= 0; i--) {
newString += commandInput[i];
}
return console.log(newString);
}
let call = reverseString(extract);
我想不出一種方法來使命令行中的多個參數起作用,例如:
node reverseString.js numberOne numberTwo
這將導致這樣的輸出:
enOrebmun owTrebmun
但是它適用於單個參數,例如:
node reverseString.js numberOne
您需要在reverseString()
每個argv[n...]
值上運行您的reverseString()
函數。在正確應用 Array.prototype.splice(2) 函數后,該函數刪除了數組索引 0 和 1(包含命令( /path/to/node
) 和/path/to/module/file.js
),您需要遍歷數組中的每個剩余索引。
Array.prototype.forEach
方法非常適合這種情況,而不需要 for 循環或映射。 下面是使用 OP 代碼,是所需輸出所需的最小程序(沒有太多重構)。
let CL = process.argv.slice(2);
function reverseString(commandInput) {
var newString = "";
for (var i = commandInput.length - 1; i >= 0; i--) {
newString += commandInput[i];
}
return console.log(newString);
}
CL.forEach((extract)=>reverseString(extract))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.