JavaScript Number isSafeInteger() 方法用于确定传递的值是否为安全整数。如果数字是 '安全整数',则此方法返回布尔值 'true';否则返回 'false'。
什么是 Safe Inetger?
JavaScript 中安全整数(Safe Inetger)的简单定义是我们可以在 IEEE-754 双精度数字下表示的所有数字。它是介于 -(2^53) 和 (2^53) 之间的所有数字的集合,我们可以用标准方式表示它。
语法
以下是 JavaScript Number isSafeInteger() 方法的语法 -
Number.isSafeInteger(testValue)
参数
此方法接受名为 'testValue' 的参数。下面描述相同 -
- testValue - 要检查安全整数的值。
返回值
如果 number 是安全整数,则此方法返回 'true' ;否则为 'false'。
示例 1
以下程序演示了 JavaScript Number isSafeInteger() 方法的用法。如果我们没有向它传递任何值,则此方法返回 'false'。
<html>
<head>
<title>JavaScript isSafeInteger() Method</title>
</head>
<body>
<script>
//without an argument
document.write("Result = ", Number.isSafeInteger());
//output will be 'false'
</script>
</body>
</html>
输出
上述程序返回 'false'。
示例 2
如果传递的值是 'safe integer',则此方法返回 'true'。
以下程序使用 Number.isSafeInteger() 方法来检查 '30' 是否为 '安全整数'。
<html>
<head>
<title>JavaScript isSafeInteger() Method</title>
</head>
<body>
<script>
let value = 30;
document.write("Given number = ", value);
document.write("<br>Is number ", value , " is a 'safe ineter' ? ", Number.isSafeInteger(value));
</script>
</body>
</html>
输出
执行上述程序后,它将在输出中返回 'true'。
Is number 30 is a 'safe ineter' ? true
示例 3
当参数不是 'safe integer' 时,该方法返回 'false'。
这是 JavaScript Number isSafeInteger() 方法的另一个示例。我们通过将 2 ** 53 作为参数传递给此方法来检查 2 ** 53 是否为 '安全整数'。
<html>
<head>
<title>JavaScript isSafeInteger() Method</title>
</head>
<body>
<script>
let value = 2 ** 53;
document.write("Give value = ", value);
document.write("<br>Is number ", value , " is a 'safe integer' ? ", Number.isSafeInteger(value));
</script>
</body>
</html>
输出
执行上述程序后,它将在输出中返回 'false'。
Is number 9007199254740992 is a 'safe integer' ? false
示例 4
让我们看看当我们将 'NaN' 和 'Infinity' 作为参数传递给这个方法时会发生什么,一次一个。
<html>
<head>
<title>JavaScript isSafeInteger() Method</title>
</head>
<body>
<script>
let val1 = NaN;
let val2 = Infinity;
document.write("Values are: ", val1 , " and ", val2);
document.write("<br>Is value '", val1 , "' is a 'safe integer' ? ", Number.isSafeInteger(val1));
document.write("<br>Is value '", val2 , "' is a 'safe integer' ? ", Number.isSafeInteger(val2));
</script>
</body>
</html>
输出
当 'NaN' 或 'Infinity' 作为参数传递时,上述程序返回 'false'。
Is value 'NaN' is a 'safe integer' ? false
Is value 'Infinity' is a 'safe integer' ? false