阿西河

所有教程

公众号
🌙
阿西河前端的公众号

我的收藏

    最近访问  (文章)

      教程列表

      抓包专区
      测试专区

      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 类型

      目录
      目录