ExtraClass: sget 從終端機輸入文字
在學習單純的 JavaScript 途中,有些無趣的地方就是只能要求電腦做一次性的、沒什麼變化的事情。
所以本書找到了一個叫做 sget 的 npm(node package manager) 上的套件 (Package),可以在運行程式的當下輸入字串,而不是編寫程式碼時就寫死在裡面。
npm 上的網址:https://www.npmjs.com/package/sget
實際上的操作如下,在終端機上輸入:
npm install sget
之後就會在你現在所在地的資料夾底下多了 node_modules 的資料夾,內有 sget 這個套件。 之後在程式碼最上面加上:
var sget = require('sget');
就會引入這個套件,而在此書,這個套件的使用方式是像這樣:
var something = sget('Say something. I\'ll wait.');
something 這個變數將會儲存執行當下使用者輸入的字串,後面的 Say something. I\'ll wait. 是要求使用者輸入前的類似提醒訊息的東西,可以自己改成想要的文字。
然而這樣還不夠,sget 取得的使用者輸入的字串本身後面會多兩個累贅(註1),所以必須將後面兩項刪除:
something = something.substring(0, something.length - 3); //(註2)
做完之後,如果你輸入的是 Happy New Year!,你就可以真的用
if(something == "Happy New Year!")
console.log("YOU ARE RIGHT! HAPPY NEW YEAR!");
來做判斷式了。有了這個之後,可以做的程式就更多樣化啦!
註解:
- 最後兩項按順序分別是 ASCII 的 13 跟 10,有興趣的話可以去查查是什麼東西。
- 這個 // 兩個斜線的符號是代表著程式裡面的註解,後面的文字將不影響程式碼的運行。另外,substring 是 JavaScript 內建的字串相關的函式,substring 的翻譯是子字串,它會取得 something 的 ? ~ ? 項目(這邊的舉例是 0 ~ 字串長度-2)並回傳一個新的字串。