プログラミング、フリーダイビング、ブロックチェーンのブログ

プログラミング道場

【JavaScript入門】数値かどうかを判定する方法

更新日:

記事の内容


この記事では、JavaScriptで数値を判定する方法を説明します。
isNaN、Number.isNaN、isFinite、Number.isFinite、Number.isInteger、正規表現を使います。
JavaScriptのコードは、ES6で書いています。

isNaN(is Not a Number)

isNaN()関数は引数が 、NaN (Not a Number)かどうかを判定します。
下記のコード例では、数字、数字の文字列、16進数などの動作を確認しています。

isNaN関数の動作は、数値ではない引数における動作がわかりづらいです。
なぜならば、isNaN関数の引数が数値型ではない場合、その値はまず数字へと型強制されるからです。
その結果の値に対して、NaNかどうかを判定します。
このようにして、数値型に型強制される際に結果がNaN ではない数値となる非数値に対しては、予想外なことに "false" が返されます。
型強制されると0や1の値になる「空文字列」「真偽値」「プリミティブ」などは使用する時に気をつける必要があります。

Number.isNaN

この関数は、型強制が行われません。

isFinite

有限数かどうかを判定します。
この関数は、暗黙の型変換が行われます。

Number.isFinite

有限数かどうかを判定します。
暗黙の型変換が行われません。

Number.isInteger

値が整数かどうかを判定します。

正規表現

正規表現で数値を判断することもできます。

まとめ

この記事を読んだところで、どの関数を使えばいいのか迷うかもしれません。
簡単な指針を書くので、参考にして下さい。

  • 文字列の数字を判断したいなら、正規表現
  • 少数を許容するなら、Number.isFinite()
  • 整数なら、Number.isInteger()

Good luck for your engineer life!

JavaScriptをより詳しく勉強したい人は、この記事を読んで下さい

JavaScriptの学習でオススメの本と動画【2020年最新】

初心者向け いちばんやさしいJavaScriptの教本 プログラミング初心者にも簡単に理解できるような書き方がされていて、ページあたりの文字数や内容も少ないので、テンポよく勉強を進めることができます。 全体像を掴むには最適な本です。 ただし ...

続きを見る


30代からプログラミングを始めようか迷っている人は、この記事を読んで下さい

30代からプログラミングを始めることは可能なのか?【頑張ればギリギリセーフ】

エンジニアは人気の職種だと聞いていますが、若い人達が多い印象です。 30代から始めても間にあいますか? 2030年には79万人のエンジニアが不足 まずは、今後、10年間以上に渡るエンジニアの需給について確認しましょう。 自分の身を預けたいと ...

続きを見る


プログラミングスクールに行くか迷っている人は、この記事を読んで下さい

なんとなく、エンジニアになりたい人が無料のプログラミングスクールに行くべき理由【2019年12月の最新】

有料や無料のプログラミングスクールが多すぎて、どこにしようか迷っています。 無料のプログラミングスクールは、お得そうに見えますが、実際の所はどうですか? メリットやデメリットなどがあれば教えて下さい。 無料のスクールを推す理由 まずは、私が ...

続きを見る


自分がプログラミングスクールに行っても大丈夫か知りたい人は、この記事を読んで下さい

プログラミングスクールに通って挫折する人と上手くいく人の違い

スクールに通っている人の3パターン プログラミングスクールに通っている人のパターンを整理すると、以下の3パターンに分かれます。 それぞれのタイプの特徴を、もう少し詳細に説明していきます。 それぞれのタイプの特徴 大した努力をせずに文句ばかり ...

続きを見る


ゼロからWebエンジニアになりたい人は、この記事を読んで下さい

ゼロからWebエンジニアとして就職する方法【何もない自分に積み上げていく】

ちまたには、「エンジニアになるための情報」で溢れかえっています。 ジョージさんが考える「Webエンジニアになる方法」を教えて下さい。 私が定義するWebエンジニア まず、最初に以下の図を見て下さい。 これが、Web業界で働く人達の大分類です ...

続きを見る


独学で実務っぽい経験を積みたい人は、この記事を読んで下さい

エンジニアが独学で実務経験っぽいことを学ぶ方法

エンジニアとして就職するためには実務経験が大事だと聞いていますが、就職しないことには実務経験を積むことができません。 どうやって、最初の実務経験を積んだらいいでしょうか? スクールの理想と現実 これからプログラミングを学ぼうとしている人が描 ...

続きを見る

関連コンテンツ

-JavaScript, プログラミング

Copyright© プログラミング道場 , 2020 All Rights Reserved Powered by AFFINGER4.