js变量声明位置及编译执行顺序(提升)
JavaScript 会将函数声明和变量声明提升到当前作用域的顶部。
变量赋值不会提升。
在脚本的顶部声明函数和变量,这样语法和行为就会相互保持一致。
sayHi("Julia");
function sayHi(name) {
console.log(greeting + " " + name);
var greeting = "Hello";
}
//输出 "undefined Julia"
//实际编译时
sayHi("Julia");
function sayHi(name) {
var greeting;
console.log(greeting + " " + name);
greeting = "Hello";
}
//输出 "undefined Julia"
posted on 2017-10-18 10:31 yunjie_miao 阅读(191) 评论(0) 收藏 举报
浙公网安备 33010602011771号