zoukankan      html  css  js  c++  java
  • 数据类型——方法总结(可能有不对的)

    假设:var arr=['100px','abc'-6,[],-98765,34,-2,0,'300', ,function(){alert(1);},null,document,[],true,'200px'-30,'23.45元',5,Number('abc'),function(){alert(3);}];

    1、判断一个数是整数还是小数

      if(parseInt(num)===parseFloat(num)) {

        console.log(num + '是整数');

      }else{

        console.log(num + '是小数');

      }

    2、如何把数字类型中的数字过滤出来

      If(typeof arr[i]==='number'&&!isNaN(arr[i]))

      If(typeof arr[i]==='number'&&arr[i]==arr[i])   //  因为NaN跟它本身不相等,可以排除掉NaN

    3、isNaN()  

      经过Number()筛选,是NaN,就true

      经过Number()筛选,是数字,就false

       !isNaN()

      经过Number()筛选,是NaN,就false

      经过Number()筛选,是数字,就true

    * 而经过Number()筛选出数字的,有可能是   纯数字、纯数字字符串、布尔值、简单的数组

    4、找出可以转成数字的

      // 方法一: 

      for( var i=0;i<arr.length;i++ ) {
        if(!isNaN(arr[i])||parseFloat(arr[i])) {
          console.log(arr[i]);
        }
      }

      // 方法二:会把 []、null 给漏掉,因为0、null、undefined在if里都是false,也就是if(0)==if(false) if(null)==if(false) if(undefined)==if(false),放在if里面,它们就跑到false那里去执行了

      for( var i=0;i<arr.length;i++ ) {

        if(Number(arr[i])||parseFloat(arr[i])) {
          console.log(arr[i]);
        }
      }

     PS:数据类型:数字类型、字符串、布尔值、函数、对象(元素、[] 、{} 、null)、未定义

      真:非0的数字、非空字符串、true、函数、能找到的元素、[]、{}

      假:0、NaN、空字符串、false、null、未定义

    5、parseInt()  parseFloat() 可以转数字的有:纯数字   字符串(至少第一个字符是数字)  非空数组(根据第一个逗号之前的数转)

       Number()  可以转数字的有:纯数字   纯数字字符串   布尔值   null   数组( []  [纯数字] )

    parseFloat()&&Number()  :纯数字  纯数字字符串  数组( [纯数字] )

    parseFloat()||Number()    :纯数字 字符串( 至少第一个字符是数字 ) 布尔值  null   数组(简单的数组) ,但是要注意的是,如果放在if中做判断,0  null  这样的会是false的,参见方法二

  • 相关阅读:
    时间相关
    mongodb数据库怎么迁移
    删除项目中所有的__pycache__ 文件
    获取请求参数
    Linux VIM python 自动补全插件:pydiction
    Linux的环境变量.bash_profile .bashrc profile文件
    Linux下查看CPU型号,内存大小,硬盘空间的命令(详解)
    python3的一些文件操作的脚手架
    Python time strptime()方法 时间操作
    我看《架构漫谈》——1
  • 原文地址:https://www.cnblogs.com/YYvam1288/p/4897730.html
Copyright © 2011-2022 走看看