JavaScript 全局函数 isFinite() 详解

🌙
手机阅读
本文目录结构

功能

isFinite() 函数用来判断被传入的参数值是否为一个有限数值

什么是有限值

代表 JS 中可以计算的最大值,下面是通过测试来看多少是最大值

console.log(Math.pow(10, 100));
console.log(Math.pow(10, 200));
console.log(Math.pow(10, 300));
// 400就开始Infinity
console.log(Math.pow(10, 400)); /* Infinity */
console.log(Math.pow(10, 500)); /* Infinity */

console.log(Math.pow(10, 350));
console.log(Math.pow(10, 325));
console.log(Math.pow(10, 305));
console.log(Math.pow(10, 310));
console.log(Math.pow(10, 306));
console.log(Math.pow(10, 308)); //10的308次方
console.log(Math.pow(10, 309)); /* Infinity */

当还是 Math.pow(10, 308)的时候,还属于有效值,但是当Math.pow(10, 309)就属于超过最大范围了

作用

为了看某个值是不是超过限制了;比如下面就可以判断;

console.log(isFinite(Math.pow(10, 305))); //true
console.log(isFinite(Math.pow(10, 308))); //true
console.log(isFinite(Math.pow(10, 309))); //false
console.log(isFinite(Math.pow(10, 310))); //false

和其它的值判断

console.log(isFinite(0));//true
console.log(isFinite("0"));//true
console.log(isFinite("0"));//true
console.log(isFinite("anbang"));//false

console.log(isFinite(Infinity));//false
console.log(isFinite(NaN));//false
console.log(isFinite(-Infinity));//false
console.log(isFinite(null));//true
console.log(isFinite(undefined)); //false

应用

这个一般在做非常大的数据时候才会用到,但是一般很大值的时候,我们用 bignumber 库或者 bigint 类型来处理;

这个方法其实没啥用;知道有这么回事就可以了;

推荐可以看看 bigint 类型数据,这个非常重要!

JavaScript BigInt 类型

AXIHE / 精选资源

浏览全部教程

面试题

学习网站

前端培训
自己甄别

前端书籍

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili

关注我: Github / 知乎

于2021年离开前端领域,目前重心放在研究区块链上面了

我叫朱安邦,阿西河的站长

目前在杭州从事区块链周边的开发工作,机械专业,以前从事平面设计工作。

2014年底脱产在老家自学6个月的前端技术,自学期间几乎从未出过家门,最终找到了满意的前端工作。更多>

于2021年离开前端领域,目前从事区块链方面工作了