知识点
- new 等运算符的优先级
- settimeout 函数和立即执行函数的作用域是全局作用域。但没有this 的话,比如本来应该是this.a改成 a 的话, 就会遵循作用域链
- 函数提升优先于变量提升,但最后的赋值结果看谁是最后赋值的,函数在预编译的时候就会进行赋值(一边声明,一边赋值。),然后再是变量的赋值。最后变量的赋值就覆盖了函数的赋值。
var name;
function name(){
console.log(1);
}
console.log(typeof name);//function
name = 12
console.log(typeof name);//number
var name=12;
function name(){
console.log(1);
}
console.log(typeof name);//number
//总结就是 看我那个函数与变量提升优先级的博客