UNPKG

learnyounode

Version:

Learn You The Node.js For Much Win! An intro to Node.js via a set of self-guided workshops.

34 lines (20 loc) 1.79 kB
撰寫一個可以印出命令列參數總和的程式。 ---------------------------------------------------------------------- ## 提示 透過 global 的 `process` 物件,您可以存取到來自命令列的參數。 `process` 物件會把完整的命令列放到底下的 `argv` 屬性中,如 `process.argv` 。 請先撰寫一個單純包含底下命令的程式: ```js console.log(process.argv) ``` 在命令列中輸入 `node program.js` ,然後再後面多輸入幾個數字作為參數,如: ```sh $ node program.js 1 2 3 ``` 在這個範例中,程式的輸出會像底下一樣,是一個 Array (數列): ```js ['node', '/path/to/your/program.js', '1', '2', '3'] ``` 為了輸出這些參數的總和,您需要思考如何以迴圈的方式輪流存取這幾個參數。`process.argv` Array 的第一個元素永遠是「node」,而第二個元素也永遠是被執行的程式 `program.js` 的完整路徑,所以您需要從第三個元素(index 2)開始,依序加入來自命令列的參數,直到這個 Array 結束。 要注意的是, `process.argv` 的所有元素都是字串(String),而您需要把它們 *轉換* 成數字(Number)。您可以在 `process.argv` 前加上 `+` 或是把這個屬性傳給函式 `Number()` 。如 `+process.argv[2]``Number(process.argv[2])`{appname} 將會在您執行 `{appname} verify program.js` 的時候加入參數,所以您不用自己加上。如果不想驗證程式,只想自己嘗試執行看看,可以在終端機中輸入 `{appname} run program.js` 並執行。當您使用 `run` 的方式執行程式的時候,您將會引入 {appname} 為每個作業所設定好的測試環境。 ----------------------------------------------------------------------