JavaScript Number isSafeInteger() 方法



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'。

Result = 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'。

Given number = 30
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'。

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