JavaScript Number isSafeInteger() 方法
JavaScript Number 的 isSafeInteger() 方法用于判断传入的值是否为安全整数。如果数字是"安全整数",则此方法返回布尔值"true";否则返回"false"。
什么是 Safe Integer?
JavaScript 中 安全整数 的简单定义是所有符合 IEEE-754 双精度数标准的数字。它是介于 -(2^53) 到 (2^53) 之间的所有数字的集合,我们可以用标准方式表示它。
语法
以下是 JavaScript Number isSafeInteger() 方法的语法 -
Number.isSafeInteger(testValue)
参数
此方法接受一个名为"testValue"的参数。其描述如下 -
- testValue - 要检查是否为安全整数的值。
返回值
如果数字是安全整数,则此方法返回"true";否则返回 'false'。
示例 1
以下程序演示了 JavaScript Number isSafeInteger() 方法的用法。如果我们不向该方法传递任何值,则返回 'false'。
<html>
<head>
<title>JavaScript isSafeInteger() Method</title>
</head>
<body>
<script>
//不带参数
document.write("Result = ", Number.isSafeInteger());
//输出将为"false"
</script>
</body>
</html>
输出
上述程序返回 'false'。
Result = false
示例 2
如果传递的值是"安全整数",则此方法返回"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"。
Given number = 30 Is number 30 is a 'safe ineter' ? true
示例 3
当参数不是"安全整数"时,该方法返回'false'。
以下是 JavaScript Number isSafeInteger() 方法的另一个示例。我们将 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"。
Give value = 9007199254740992 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"。
Values are: NaN and Infinity Is value 'NaN' is a 'safe integer' ? false Is value 'Infinity' is a 'safe integer' ? false

