カテゴリ: JavaScript 更新日: 2025/12/09

JavaScriptの数値判定メソッド(isFinite, isInteger)を解説

JavaScriptの数値判定メソッド(isFinite, isInteger)を解説
JavaScriptの数値判定メソッド(isFinite, isInteger)を解説

先生と生徒の会話形式で理解しよう

生徒

「先生、JavaScriptで数字かどうか確認する方法ってありますか?」

先生

「はい、JavaScriptには数値判定用のメソッドがあります。特にisFiniteisIntegerが便利です。」

生徒

「違いは何ですか?」

先生

isFiniteは有限の数かどうかを確認するメソッドで、isIntegerは整数かどうかを判定するメソッドです。」

生徒

「なるほど。具体的な使い方を教えてください。」

先生

「では、基本的な例を見てみましょう。」

1. isFiniteメソッドとは?

1. isFiniteメソッドとは?
1. isFiniteメソッドとは?

isFiniteは、引数が有限の数かどうかを確認するメソッドです。Infinityや- Infinity、NaN(Not a Number)などの特別な数値はfalseを返します。有限の数であればtrueを返します。


console.log(isFinite(100));       // true
console.log(isFinite(-500.5));    // true
console.log(isFinite(Infinity));  // false
console.log(isFinite(NaN));       // false
console.log(isFinite("123"));     // true(文字列は数値に変換される)

true
true
false
false
true

文字列が数字に変換できる場合はtrueになりますが、変換できない場合はfalseになります。

2. Number.isFiniteとの違い

2. Number.isFiniteとの違い
2. Number.isFiniteとの違い

注意点として、Number.isFiniteというメソッドもあります。こちらは引数を数値として判定するため、文字列はfalseになります。


console.log(Number.isFinite(123));    // true
console.log(Number.isFinite("123"));  // false

true
false

文字列などの型変換を自動で行わないので、より厳密に判定したい場合はこちらを使います。

3. isIntegerメソッドとは?

3. isIntegerメソッドとは?
3. isIntegerメソッドとは?

isIntegerは、数値が整数かどうかを判定するメソッドです。小数点以下がある数はfalse、整数であればtrueを返します。


console.log(Number.isInteger(100));    // true
console.log(Number.isInteger(3.14));   // false
console.log(Number.isInteger(-50));    // true
console.log(Number.isInteger(NaN));    // false
console.log(Number.isInteger(Infinity));// false

true
false
true
false
false

小数や特別な数値(NaN、Infinity)にはfalseが返ることに注意しましょう。

4. isFiniteとisIntegerを組み合わせる

4. isFiniteとisIntegerを組み合わせる
4. isFiniteとisIntegerを組み合わせる

数値が有限で整数かどうかを両方チェックしたい場合は、isFiniteNumber.isIntegerを組み合わせて使うこともできます。


function isFiniteInteger(num) {
  return isFinite(num) && Number.isInteger(num);
}

console.log(isFiniteInteger(100));   // true
console.log(isFiniteInteger(3.14));  // false
console.log(isFiniteInteger(Infinity)); // false

true
false
false

これにより、より安全に数値の判定ができ、プログラムのエラーを防ぐことができます。

5. まとめではない注意点

5. まとめではない注意点
5. まとめではない注意点

数値判定メソッドを使う際のポイントは以下の通りです。

  • isFiniteは文字列も数値に変換して判定する
  • Number.isFiniteは型変換を行わず、より厳密な判定ができる
  • Number.isIntegerは整数かどうかだけを判定する
  • 特別な値(NaN、Infinity)は判定結果に注意する
カテゴリの一覧へ
新着記事
New1
TypeScript
TypeScriptでパスエイリアスを設定する方法!baseUrlとpathsでコードをスッキリ整理
New2
JavaScript
JavaScriptのfor文の書き方を初心者向けにやさしく解説
New3
JavaScript
JavaScriptの関数でよくあるエラーとその解決法まとめ
New4
JavaScript
JavaScriptのイベント処理でよくあるエラーとその対処法
人気記事
No.1
Java&Spring記事人気No1
JavaScript
JavaScriptのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.2
Java&Spring記事人気No2
JavaScript
JavaScriptのマウスイベントの使い方(click, mouseoverなど)
No.3
Java&Spring記事人気No3
JavaScript
JavaScriptのtoStringとString関数の違いを初心者向けに解説
No.4
Java&Spring記事人気No4
JavaScript
JavaScriptの純粋関数(pure function)と副作用の違いを理解しよう
No.5
Java&Spring記事人気No5
JavaScript
JavaScriptプログラムの実行方法まとめ!ブラウザ・Node.js・コンソールの使い方
No.6
Java&Spring記事人気No6
JavaScript
JavaScriptで文字列をforループで1文字ずつ処理する方法!初心者向け解説
No.7
Java&Spring記事人気No7
TypeScript
TypeScriptの始め方:開発環境の構築手順【初心者向け】
No.8
Java&Spring記事人気No8
JavaScript
JavaScriptのDOMContentLoadedとloadイベントの違いを理解しよう