JavaScript預解析
阿新 • • 發佈:2020-12-09
技術標籤:JavaScript前端js
1.易錯:
f1();
console.log(c);
console.log(b);
console.log(a);
function f1() {
//相當於var a = 9; b = 9; c = 9; b和c直接賦值,沒有宣告,當全域性變數看
//易混淆:集體宣告 var a = 9, b = 9, c = 9;
var a = b = c = 9;
console.log(a);
console.log(b);
console.log(c);
}
執行順序:
function f1() {
var a;
a = b = c = 9;
console.log(a);
console.log(b);
console.log(c);
}
f1();
console.log(c);
console.log(b);
console.log(a);
執行結果:
2.比較
2.1
fn();
function fn() {
console.log('列印');
}
執行順序:
function fn() {
console.log('列印');
}
fn();
執行結果:
2.2
fn();
var fn = function() {
console.log('想不到吧');
}
執行順序:
var fn;
fn();
var fn = function() {
console.log('想不到吧');
}
執行結果: