We're looking for a person or people to help audit MDN to find places we could speed up. Is this you or someone you know? Check out the RFP: https://mzl.la/2IHcMiE

Number.isSafeInteger() メソッドは、引数として与えた数が safe integer かどうかの真偽値を返します。safe integer は下記を満たす整数です。

  • 正確に IEEE-754 倍精度数として表すことができます。
  • IEEE-754 の表現は、IEEE-754 の表現に適合するように、他の整数を丸めた結果にすることはできません。

例えば、253 - 1 は safe integer です。正確に表現することができ、他の整数は、任意の IEEE-754 丸めモードの下で丸めていません。対照的に、253 は safe integer ではありません。 : IEEE-754 で正確に表現されますが、整数値 253 + 1 は直接 IEEE-754 では表現できません。代わりに四捨五入、0 への丸めによって 253 に丸められます。

safe integer は -(253 - 1) 以上 253 - 1 以下の整数値です。




safe integer かどうかテストされる値

Return value

与えられた値が safe integer かどうかを示すBoolean

Number.isSafeInteger(3);                    // true
Number.isSafeInteger(Math.pow(2, 53));      // false
Number.isSafeInteger(Math.pow(2, 53) - 1);  // true
Number.isSafeInteger(NaN);                  // false
Number.isSafeInteger(Infinity);             // false
Number.isSafeInteger('3');                  // false
Number.isSafeInteger(3.1);                  // false
Number.isSafeInteger(3.0);                  // true


Number.isSafeInteger = Number.isSafeInteger || function (value) {
   return Number.isInteger(value) && Math.abs(value) <= Number.MAX_SAFE_INTEGER;


仕様 状況 コメント
ECMAScript 2015 (6th Edition, ECMA-262)
Number.isSafeInteger の定義
標準 初期定義。
ECMAScript Latest Draft (ECMA-262)
Number.isSafeInteger の定義


We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

機能 Chrome Firefox (Gecko) Internet Explorer Opera Safari
基本サポート (有) 32 (32) 未サポート (有) 10.0
機能 Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
基本サポート 未サポート 未サポート 32.0 (32) 未サポート 未サポート 未サポート



 このページの貢献者: YuichiNukiyama, shide55
 最終更新者: YuichiNukiyama,