JavaScript 判断是否是数字 isFinite() Number.isFinite()


前言

  • isNaN() 判断不是数字
  • isFinite() 判断是数字
  • isFinite() 有两个方法 : isFinite() 和 Number.isFinite()

检验代码

<!doctype html><html lang="zh-CN"><head><meta charset="utf-8"/><title>Infinity isFinite() Number.isFinite()</title>
<style>
table{border-collapse:collapse;}
#Tbody001>:nth-of-type(odd){ background-color:#eeeddd; }
</style><script>


</script></head><body>

<table>
	<thead>
		<tr>
			<th>参数</th>
			<th>isFinite()</th>
			<th>Number.isFinite()</th>
		</tr>
	</thead>
	<tbody id="Tbody001"></tbody>
	
	
</table>

<script>
	const Tbody001 = document.getElementById("Tbody001");
	function td(tr,v){ var td=document.createElement("td"); td.innerHTML = v; tr.appendChild(td);}
	function f(x){ 
		var x1 = String(x); if(x.constructor===String)x1='"'+x1+'"';
		var tr = document.createElement("tr");
		td(tr , x1);   td(tr , "isFinite("+x1+")="+isFinite(x) );   td(tr , "Number.isFinite("+x1+")="+Number.isFinite(x)   );
		Tbody001.appendChild(tr);

	}
	
	f(123);
	f(-1.23);
	f(5-2);
	f(0);
	f('123');
	f('Hello');
	f('2005/12/12');
	f(Infinity);
	f(-Infinity);
	f(0 / 0);
	f("3.14159265359");
	f(3.14159265359);
	f("2.718281828");
	f(2.718281828);


</script></body></html>

结果

在这里插入图片描述


总结

引自菜鸟教程
Number.isFinite() 与全局的 isFinite() 函数不同,
全局的 isFinite() 会先把检测值转换为 Number ,然后在检测。

Number.isFinite() 不会将检测值转换为 Number对象,
如果检测值不是 Number 类型,则返回 false。


Infinity 都是 false
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

kfepiza

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值