先看一个栗子:
function getName(name) {
console.log(name)
};
var getName;
console.log(getName)
从这里可以看出getName方法覆盖了getName变量,这就从一方面证明函数比变量的优先级高一些。
我认为可以这么理解:var getName = window.getName = function(name) { console.log(name) }
再来一个栗子:
function getName(name) {
console.log(name)
}
var getName = "duya"
console.log(getName)
但是当getName变量被初始化或赋值之后,getName方法覆盖了getName变量,但是覆盖不了getName变量的值。
这里我认为可以这么理解:var getName = window.getName = function(name) { console.log(name) } = 'duya'