僕は先日はじめて体験しました(遅い)
自分ができるようになったのを良いことに、自慢気に書いていこうと思います。JavaScriptの標準入出力について。
標準入出力って??
Web系の人にはピンと来ないかもしれませんね。
ターミナル(コマンドライン)上での入力や出力のことです。
C言語を触ったことがある人は「ああ、あれのことね」って感じかもしれません。あるいは、rubyでも書けるみたいです。
JavaScriptで??
JavaScriptというか、Node.jsですね。すみません。
公式DL:https://nodejs.org/en/download/
ポイントはreadlineモジュール
readlineモジュールというものを使うようです。
ひとまず書いてみました。
ユーザーから入力を受け付け、control+cが押されたら入力を終了します。
その後、入力された文字列をバーっとコンソールに出力します。
実際にファイルを実行します。
以下のように文字列を入力して、control+cで終了します。
すると、このように入力された文字をindexつきで吐き出します。
これが標準入出力ですね。
気になるreadlineの中身
先ほど定義したreadline変数の中身を覗いてみましょう。
ふむ、色々入っていますね。オブジェクトの形式になっており、input, output, completerの順で定義されています。
questionを使ってみる
questionを使うと、標準入力の前に「質問」ができます。
こちらは、4択問題を出題するのですが、出題と「正解はどれ?」が入力前に表示されます。
ttyってなんやねん??
参考にしたサイトにこのような記述があります。
いやいやいや、ttyってなんやねん!
と、文系プログラマーは思うわけですね。
調べました。-> https://ja.wikipedia.org/wiki/Tty
まあ、ターミナルと思っておけば良さそう。
数値加算するやつつくった
つくりました。
ファイルを起動すると、加算処理が始まります。
数値を入力してはEnter、入力してはEnter、、、その繰り返し。
もちろん、マイナスの数を指定することで、減算も可能です。
終了キーはendになります。
個人的に、家計簿をつける際に使えそうです。単純に数値を加算していくだけだと、電卓よりもこっちのほうが早そうです。
まとめ
JavaScript(Node.js)でも標準入出力できた。