神戸プログラミングアカデミーのブログ

「未経験から」「スキルアップ」「起業を目指す」無料で学べる神戸のプログラミング学校&学習コミュニティ

数値検査

引数で受け取った文字列の中が、0〜9のみで構成されていた場合はtrueを、0〜9以外の文字が入っていた場合はfalseを返す関数 isNumber() を作成せよ。

ただしJavaScriptで用意されているあらゆるメソッドを使うこととNumber型にキャストすることを禁止する。

$ node main.js 123
$ true
$ node main.js 1b3
$ false

解答例

function isNumber(str) {
  let ret = true
  for (let i = 0; i < str.length; i++) {
    const ch = str[i]
    if (ch < "0" || ch > "9") {
      ret = false
      break
    }
  }
  return ret
}
console.log(isNumber(process.argv[2]))