カテゴリ: 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
JavaScript
JavaScriptの配列を逆順にする方法(reverseメソッド活用)
New2
JavaScript
JavaScriptの配列の並べ替え(sortメソッド)の基本とカスタマイズ
New3
TypeScript
TypeScriptとJSDocを併用して型推論を強化!初心者向けガイド
New4
JavaScript
JavaScriptの配列の長さ(lengthプロパティ)を理解しよう
人気記事
No.1
Java&Spring記事人気No1
JavaScript
JavaScriptのインストール方法まとめ!Windows・Mac・Linux別にステップ解説
No.2
Java&Spring記事人気No2
TypeScript
TypeScriptの型定義ファイル管理を徹底解説!読み込み順序とDefinitelyTypedの仕組み
No.3
Java&Spring記事人気No3
TypeScript
TypeScriptで型定義を拡張する方法を徹底解説!モジュール拡張とDefinitelyTypedの使い方
No.4
Java&Spring記事人気No4
TypeScript
TypeScript型定義ファイル(d.ts)の分割構成を徹底解説!大規模開発でも迷わない管理術
No.5
Java&Spring記事人気No5
JavaScript
JavaScriptプログラムの実行方法まとめ!ブラウザ・Node.js・コンソールの使い方
No.6
Java&Spring記事人気No6
TypeScript
TypeScript学習におすすめの無料教材・リファレンスサイト【初心者向け】
No.7
Java&Spring記事人気No7
TypeScript
TypeScriptで型定義を参照する方法!triple-slash directives(三斜線ディレクティブ)を徹底解説
No.8
Java&Spring記事人気No8
TypeScript
TypeScriptでコメントを書く正しい書き方と使い分け【初心者向けにやさしく解説】