JS 里的数据类型转换

200 阅读1分钟
方法toString()Number()isNaN()
number变为字符串不变false
string不变表外详述含数字false,否则返回true
undefined无此方法NaNtrue
null无此方法返回0false
boolean变为字符串0或1false

Boolean()里有五个为false的值,分别是NaN,0,null,undefined和空字符串.常用 !! 代替Boolean().

数据类型 转换为true的值 转换为false的值
Boolean true false
String 任何非空字符 ""(空字符串)
Number 除0之外的数字 0和NaN
Object 任何对象 null
Undefined ... undefined

全局函数String()可以将任何类型的值转换为字符串.

Number()的string转换规则(不常用):

  • 只包含数字将其转换为十进制数字.
  • 包含浮点格式则转化为内对应的浮点格式.
  • 包含十六进制(0x开头)则将其转换为十进制数
  • 空字符串返回0.
  • 包含除上述格式外的的字符返回NaN.

parseInt()的使用规则(常用):

  • 第一个非空格字符不是数字字符或者符号返回NaN(空字符串同).
  • 数字字符后的其他字符会被忽略.
  • 建议使用parseInt()的第二个参数指定基数,如:parseInt(0xff,16).


另外,将目标转换为字符串的一个简便方法是

**(目标) + ''(空字符串)