江门公司网站建设android开发工程师
        • js解释执行
         • 变量和函数提升
 变量声明提前,函数声明提前
         • 变量声明提前:值停留在本地
         • 函数声明提前:整个函数体提前
 如果是var赋值声明的函数,变量提前,函数体停留在本地
 1、变量提升
 未声明使用会报错
console.log(a); // Error: a is not defined 
var会变量提升
console.log(a);  // undefined
var a = 10; 
let定义不会提升
console.log(a);  // Error: Cannot access 'a' before initialization
let a = 10; 
2、函数提升
console.log(func);  // func(){}
function func(){} 
console.log(foo);  // undefined
var foo = function func(){} 
console.log(func);  // Error: func is not defined
var foo = function func(){} 
