js数据基本数据类型 |
您所在的位置:网站首页 › js基本数据类型判断 › js数据基本数据类型 |
number数字类型
包含:常规数字、NaN NaNnot a number: 非数字 不是一个数,但它率属于数字类型 NaN和任何值(包括自己)都不相等:NaN!=NaN,所以我们能用相等的方式判断是否为有效数字 isNaN检测一个值是否为非有效数字,如果不是有效数字返回true,反之是有效数字返回false 在使用isNaN进行检测的时候,首先会验证检测的值是否为数字类型,如果不是,先基于Number()这个方法,把值转换为数字类型,然后检测 ![]() 注意:undefined代表未定义,未定义代表没有赋值,没有赋值的值它就没有值。没有值的话它就是NaN. 注意: Number({}) 先调用tostring()方法({}.toString() 对象的toString()是其原型上的方法,监测数据类型)转换成字符串为:"[object Object]" 在调用Number() 转成数字 为 NaN Number([]) 先调用tostring()方法转换为字符串为 ‘’ 空串,在掉Number() 转换为 0 parseInt/parseFloat([val],[进制]):也是转换数字的方法,对于对于字符串来说,它是从左到右依次查找有效数字字符,知道遇到非有效数字字符,停止查找(不管后面是否还有数字,都不在找了),把找到的当做数字返回进行比较的时候,可能要出现把其它类型值转换为数字注意: 在==比较的过程中,数据转换的规则: 【类型一样的几个特殊点】’ {}= = {}:false [] = =[]:false 对象比较的是堆内存的地址 NaN = = NaN:false 【类型不一样的转换规则】 null = = undefined:true,但是换成===结果是false(因为类型不一致),剩下null/undefined和其它任何数据类型值都不相等字符串==对象 要把对象转换为字符串剩下如果==两边数据类型不一致,都是需要转换为数字再进行比较 null == 0 // false undefined == 0 // false JS中的加减乘除本应该是数学运算(如果遇到的值不是数字类型,也需要基于Number()方法转换为数字,在进行运算);但是JS中加法有特殊情况;相加过程中遇到字符串直接变为字符串拼接(+两边都转换为字符串进行拼接toString())var c=100+true+21.2+null+undefined+‘Tenent’+[]+null+9+false; console.log© 注: 100+1+21.2+0+Number(undefined)结果为NaN+‘Tenent’+[]+null+9+false; 122.2+NaN=NaN NaN+‘Tenent’=‘NaNTenent’ ‘NaNTenent’ 遇到字符串接下来成为字符串拼接 [].toString()=’’ ‘NaNTenent’ +’’= ‘NaNTenent’ ‘NaNTenent’+null+9+false=‘NaNTenentnull9false’ 结果: ‘NaNTenentnull9false’
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |