函数提升的优先级比变量提升优先级更高,同名的函数和变量怎么提升呢?预编译里 先声明变量,再声明函数,这个不是和前面的 (函数提升的优先级比变量提升优先级更高)冲突了吗?
var d = function d(){
console.log(this)
console.log(d) // f d()
d = 8
console.log(d) // f d()
}
d()
运行结果及报错内容
打印结果都是 都是 函数 d()
我想要达到的结果
是否冲突呢?具体的运行机制怎样的呢?