记录两个小知识点
1、typeof一个未定义的变量会输出’undefined’,和控制台打印报错有所区别
abc //Uncaught ReferenceError: abc is not defined
typeof abc // 'undefined'
typeof abc会返回undefined的原因是,typeof有一个特殊的安全防范机制,可以在对一个未声明的变量进行RHS查询时阻止报错,只返回undefined而不抛出异常。
这里再看
typeof abc() // Uncaught ReferenceError: abc is not defined
当这个abc()执行的时候就会报错了
2、函数内,函数名变量就是函数本身,给它赋值会失效
(function test(){
test = 100;
console.log(test)
})()
//ƒ test(){
test = 100;
console.log(test)
}