6
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

readline-syncを使ってJavaScript(Node.js)でターミナルからの入力を受け取る

Last updated at Posted at 2019-07-13

###使用環境
macOS 10.14
Node.js 8.11.1
npm 5.6.0

###npmの初期化
npm長らく使ってなくて、
package.jsonが狂ってしまっていたので
一度削除し、再度初期化しました。

$npm init

「yes?」と聞かれるまではブランクのまま実行キー押下。

###requireも狂っていたので、再インストールしました

$npm install require

##readline-syncを使って複利計算式を作ってみる
余談ですが株式投資の勉強中なので複利計算式を作りました。
多分、ググればその類のツール出てきそうですが作りました。

今回Node.jsを利用したのは、javascriptをターミナルから実行したかったからです。

ちなみにJSCを使うことでもjavascriptをターミナルから実行できるみたいです。
macOSのやつですが。
JSC : https://qiita.com/wnoooo/items/ef88433e84b79e362a8d

###readline-syncのインストール

$npm install readline-sync

###readline-syncの基本的な使い方

howto.js
//readline-syncの読み込み
var readLineSync = require("readline-sync");

//ターミナルでの入力を受け取る
var input = readLineSync.question("入力してください。");

今回作った複利計算のコードです。
本記事は、readline-syncの使い方のご紹介なので
コードに関する説明はありません。

calc.js
var readline = require("readline-sync");

function hukuri() {
    var motode = readline.question("元手は何円ですか?数字のみ入力してください。");
    let nenri = readline.question("想定年利は何%ですか?数字のみ入力してください。");
    let unyo = readline.question("想定運用年数を数字で入力してください?");

    motode = parseFloat(motode);
    nenri = parseFloat(nenri);
    unyo = parseFloat(unyo);

    nenri = 1 + (nenri / 100);

    for(var i = 0; i < unyo; i++) {
        let nen = i + 1;
        motode = motode * nenri;
        console.log(nen + "年目:" + motode + "");
    }

    console.log(unyo + "年で" + motode + "円になります。");
}

hukuri();

あ、ちなみに当たり前のことですがNode.jsなので実行は

$node JSファイル名

です。

参考: https://www.npmjs.com/package/readline-sync

6
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?