关于JS

46 阅读1分钟

类型转换规则

原始转数字
true:1
false:0
null:0
undefined:NaN
string:{
            空字符串(含空白字符):0
            先去掉引号,不是数字就是Nan
    }
所有类型转bool
null:false
undefined:false
number:{
            0false
            Nan:false
            其他:true
    }
string:{
            空字符串:false
            其他:true
        }
对象:true
原始类型转字符串
null:"null"
undefined:"undefined"
number:"数字"
bool:{
            true:"true"
            false:"false"
        }
对象转原始

先会调用valueOf() 如果得到的还是对象 那么会重新调用toString() 如果得到的还是对象--报错

Strict equality (===)

在js中[] !=[]因为存放的地址不同,但如果作比较 严格意义上是相等的:用Strict equality if(error) throw error //抛出错误,立刻中断