parseInt、parseFloat、Number、Boolean、valueOf总结

parseInt(string, radix)

功能: 将字符串转换为十进制的数字

radix: string的进制,没有时根据string进行判断:

1~9开头 十进制

0x开头 16进制

0开头 八进制或16进制

允许开头结尾有空格

string被空格隔开时转换第一个

当无法转换时返回NaN

eg: parseInt("010") //8

parseFloat(string)

从遇见第一个字符开始逐个向右移动,遇见除了正负号、数字、小数点或科学计数法以外的字符即终止

忽略前后空白,并不会追加小数

string被空格隔开时转换第一个

Number(obj)

将对象转为数字,无法转换返回NaN

当转换字符串时,允许前后端有空白,但不允许中间有空白,这是因为parseInt与parseFloat都是转换第一个无效字符前的字符串,但Number面向的是整体,所以不允许中间有空格

红字部分请硬记住!

Number(undefined) //NaN

Number(null) //0

Number(5.5) //5.5

Number(5.6.7) //NaN

Number(new Object()) //NaN

Number("") //0

Number([])//0

Number([1]) //1

Number(true) //1

Boolean()

除0、null、undefined、“”、false外都为true

备注: if(a){} 其实进行了Boolean运算

valueOf(obj)

将对象转为原始数据类型

array 将返回实例数组

Boolean 返回boolean

Date 毫秒值

function 函数

number 数字

Object 对象

string 字符串

不能用于null、undefined

原文地址:https://www.cnblogs.com/yanze/p/7747202.html