📅  最后修改于: 2023-12-03 15:31:37.932000             🧑  作者: Mango
isFinite()
方法是JavaScript中Number对象的一个方法。它用于确定一个数值是否为有限的。
语法:
Number.isFinite(value)
参数:
value
:被检查的数值。返回值:
true
。Infinity
或 -Infinity
,则返回 false
。NaN
,则返回 false
。Number.isFinite(2); // true
Number.isFinite(Infinity); // false
Number.isFinite(-Infinity); // false
Number.isFinite(NaN); // false
Number.isFinite("123"); // false
在以上示例中,前四个例子都返回了预期的结果,因为它们分别为有限数值、正无穷大和负无穷大。第五个例子返回 false
,因为字符串 "123"
不是一个数值,即使我们可以将其转换为数字。
isFinite()
函数的比较Number.isFinite()
和全局 isFinite()
函数之间的主要区别在于对参数类型的处理方式。全局 isFinite()
函数可以将参数转换为数值类型,而 Number.isFinite()
不会。
isFinite(2); // true
isFinite('2'); // true
Number.isFinite(2); // true
Number.isFinite('2'); // false
在这个示例中,在使用全局 isFinite()
函数时,字符串 '2'
会被转换为数值 2
,然后返回 true
。在使用 Number.isFinite()
时,字符串 '2'
不是数值,因此返回 false
。
需要注意的是,isFinite()
方法可以用于任何类型的值,而 Number.isFinite()
只能用于数值。如果需要检查任何类型值的有穷性,则应使用全局 isFinite()
函数。
使用 Number.isFinite()
方法可以帮助我们确定一个数值是否为有限的。它比全局函数 isFinite()
更安全,因为它不会将参数强制转换为数值类型。