//把str转换为数字的方式,想起很久以前的一个面试题,说字符转数字的方式有哪些,现在想了想 var str1='4.88',str2='4.8xx'; console.log(parseInt(str1,10)) //4 console.log(str1|0) //4 console.log(str1-0) //4.88 console.log(+str1) //4.88 console.log(-(-str1))//4.88 console.log(~~str1)//4 console.log(str1<<0)//4 console.log(str1>>0)//4 console.log(Number(str1))//4.88 console.log(parseInt(str2,10))//4 console.log(str2|0)//0 console.log(str2-0)//NaN console.log(+str2) //NaN console.log(-(-str2))//NaN console.log(~~str2)//0 console.log(str2<<0)//0 console.log(str2>>0)//0 console.log(Number(str2))//NaN //str2转换可能会失败,Number、pasreInt、-号得到的值是NaN,做位运算得到的都是0;-0 和Number会得到其真正的类型,整型或者浮点型。而其他直接得到的都是整型 //不过我一般用XXX|0 XXX-0