JavaScriptのNumberオブジェクト isSafeInteger() メソッドの使い方メソッドについて記載します。
概要、実際のサンプルコードを交えて構文などの使い方をまとめてみました。
JavaScriptのNumberオブジェクトとは?
JavaScriptのNumber オブジェクトは、整数または浮動小数点数といった数値の日付を表します。
ブラウザでは、数値リテラルを自動的に数値クラスのインスタンスに変換するので、Numberオブジェクトについて心配する必要はありません。
それでは、次に本題の説明に移ります。
JavaScriptのJSONオブジェクト isSafeInteger() メソッドの使い方概要
isSafeInteger() メソッドは、数値が安全な整数かどうかを判定するメソッドです。
安全な整数とは、JavaScriptで表現できる範囲内の数値であることを意味します。
戻り値は、安全な整数ならばtrue、そうでなければfalseです。
構文、使い方
構文:
Number.isSafeInteger(value)
使い方:
Number.isSafeInteger() メソッドは、指定した値が安全な整数かどうかを判定します。
安全な整数とは、JavaScriptで表現可能な最大の整数値 (2^53 – 1) 以下の数値を指します。
メソッドは、指定した値が安全な整数なら true を、そうでなければ false を返します。
引数について
引数:数値
使い方:数値がJavaScriptの安全な整数の範囲内にあるかどうかを判定する。
返り値について
返り値は、指定した値が安全な整数ならば true、そうでなければ false となります。
このメソッドを利用した便利なテクニック
isSafeInteger() メソッドを使うと、数値が安全な範囲内にあるかどうかを確認できます。
例えば、JavaScriptでは、数値が2^53より大きい場合、正確な値を保証できません。
isSafeInteger() メソッドを使うと、そのような値が入力された場合に、エラーを出力することができます。
現場で実際にどのように使われているか
JSONオブジェクトのisSafeInteger()メソッドは、指定した値が安全な整数かどうかを判定するために使用されます。
例えば、以下のように使用できます。
1 2 3 4 5 6 |
var num = 123; if (Number.isSafeInteger(num)) { console.log(""numは安全な整数です""); } else { console.log(""numは安全な整数ではありません""); } |
JavaScriptのJSONオブジェクト isSafeInteger() メソッドの使い方と一緒によく使われる処理
一緒によく使われる処理は、isSafeInteger() メソッドを使って数値が安全な範囲内にあるかどうかを確認することです。
なぜなら、JavaScriptでは数値が安全な範囲を超えると、正しく扱えなくなるためです。
使用する上での注意点
注意点として、Number.isSafeInteger() メソッドは、Number.isInteger() メソッドと異なり、数値がJavaScriptで安全に表現できるかどうかを判定するだけで、数値が正しいかどうかを判定しません。
JavaScriptのJSONオブジェクト isSafeInteger() メソッドの使い方と似た処理のJSメソッド、違い
Number.isInteger() メソッドとNumber.isFinite() メソッドと似ていますが、下記の違いがあります。
- Number.isInteger() メソッドは、引数が整数かどうかを判定するもの
- Number.isFinite() メソッドは、引数が有限の値かどうかを判定するもの
JavaScriptのJSONオブジェクト isSafeInteger() メソッドの使い方を使ったサンプルコードの紹介
isSafeInteger()メソッドの使い方のサンプルコード
整数を判定する
1 2 |
let num1 = 9007199254740991; console.log(Number.isSafeInteger(num1)); |
浮動小数点数を判定する
1 2 |
let num2 = 9007199254740992.1; console.log(Number.isSafeInteger(num2)); |
文字列を判定する
1 2 |
let num3 = '9007199254740991'; console.log(Number.isSafeInteger(num3)); |
JavaScript Numberオブジェクトの他メソッドについて
JavaScriptのNumberオブジェクトの他メソッドについては、下記記事にもまとめていますので参考にしてみてください
メソッド名 | 機能 | リンク |
isFinite() | 値が有限数かどうかを確認します | JavaScriptのNumberオブジェクト isfiniteメソッドの使い方 |
isInteger() | 値が整数であるかどうかを確認します | JavaScriptのisIntegerオブジェクト isIntegerメソッドの使い方 |
isNaN() | 値がnumber.nanであるかどうかを確認します | JavaScriptのNumberオブジェクト isNaNメソッドの使い方 |
isSafeInteger() | 値が安全な整数であるかどうかを確認します | JavaScriptのNumberオブジェクト isSafeIntegerメソッドの使い方 |
parseFloat() | 文字列を解析しますanは番号を返します | JavaScriptのNumberオブジェクト parseFloatメソッドの使い方 |
parseInt() | 文字列を解析すると、整数が返されます | JavaScriptのNumberオブジェクト parseIntメソッドの使い方 |
toExponential(x) | 数値を指数表記に変換します | JavaScriptのNumberオブジェクト toExponentialメソッドの使い方 |
toFixed(x) | 小数点以降にx数の数字で数字をフォーマットします | JavaScriptのNumberオブジェクト toFixedメソッドの使い方 |
toLocaleString() | ロケール設定に基づいて、数値を文字列に変換します | JavaScriptのNumberオブジェクト toLocaleStringメソッドの使い方 |
toPrecision(x) | 数字をxの長さをフォーマットします | JavaScriptのNumberオブジェクト toPrecisionメソッドの使い方 |
toString() | 数字を文字列に変換します | JavaScriptのNumberオブジェクト toStringメソッドの使い方 |
valueOf() | 数のプリミティブ値を返します | JavaScriptのNumberオブジェクト valueofメソッドの使い方 |
また、JavaScriptの公式ドキュメントであるMDNで記載されているNumberオブジェクトのisSafeIntegerメソッドについても補足としてリンクを貼っておきます。参考にしてみてください。