主要的集中内置转换方法
- Number():用于将指定内容转换尝试为数字
一些特殊的情况:- Number(null) = 0 ;
- Number(undefined) = NaN ;(Not a Number)
- Number(true) = 1 ;
- Number(false) = 0
- parseInt():用于将指定内容转换尝试为整数
1 .parseInt(true) = NaN
2 .parseInt(false) = NaN- parseInt(103.9) =103 (注意不会四舍五入)
- parstInt(103.9,16) = 259 此时将103看为16进制,转换为10进制即:1×16×16+3=256+3 =259
- tostring()与String()的重要区别
undefined与null不能tostring()方法解决;但是undefined与null可以用String() - NaN() 判断输入的内容是不是数字
NaN()内容隐式调用了Number(),若成功会返回false
NaN(null)--->false NaN(undefined)-->true
一些隐式转换
var a = "123";//此时类型为string
a ++;//此时类型为number 且a =124
var a = "abc";//此时类型为string
a ++;//此时类型为number 且a =NaN
以上两个示例代码都隐式调用了Number() :都转换为Number类型
其中 ++ -- % * / 都会阴式转换为数字类型
不发生隐式转换
===:绝对等于 ,数字
内容和类型都相等 NaN ===NaN (false)特例
!==:绝对等于 ,数字内容和类型有不相等
一些重要的点
console.log(a)//会进行报错,因为未声明a
typeof(a)//只有这样才会不报错对于未声明的变量,返回undefined
typeof(typeof(a))//会返回结果string,说明typeof(a)返回undefined字符串,并不是undefined本身
typeof(undefined)--->undefined typeof("undefined")---->string








网友评论