在JS执行上下文的时候
1.先声明 --> 先声明function关键字,然后声明变量,如果有相同function命名已经存在则会跳过
2.执行
//demo
function test() {
console.log(foo);
console.log(bar);
var foo = 'Hello';
console.log(foo);
var bar = function () {
return 'world';
}
function foo() {
return 'hello';
}
}
1.声明过程
function foo(){...} 函数声明提升(同一作用域)
//var foo; 然后声明变量,如果与已经声明过的函数重名,直接跳过
var bar;
2.执行过程(就是按代码顺序执行)
console.log(foo) //func...
console.log(bar) //undefined
foo = 'Hello';
console.log(foo) //Hello
bar = function (){...}
网友评论