当朋友问我这个问题的时候,我就懵了,然后我就做了个测试
typeof a==undefined
和typeof a == 'undefined'
结果竟是不一样的,这是怎么回事呢?我做了进一步的测试:
看到这,大家应该就明白了,undefined
可以看做一个常量,而'undefined'
则是一个字符串呀。两者各自适应不同的场合,不能换用。
undefined
: 你想把一个变量的值赋值为undefined的时候;、
'undefined'
: 作为typeof类型比较的时候,比如typeof test === 'undefined'
。这个时候必须用字符串形式的'undefined'
,因为typeof test
返回的就是字符串类型的数据。