1、定义
声明提前:是指当我们声明一个变量或是一个函数的时候,会在所有代码块之前就进行变量或者函数的声明。
2、变量的声明提前
使用var关键字声明变量,会在所有的代码执行之前被声明(但是不会赋值),但是如果声明变量时不使用var关键字,则变量不会被声明提前。
3、函数的声明提前
使用函数声明形式创建的函数function(){ } 它会在所有的代码执行之前就被创建,所以我们在可以函数声明前调用函数,使用函数表达式创建函数不会被声明提前。
小结:函数声明提前的原理和变量声明提前类似;但需要注意的是:只有函数声明格式的函数才会声明提前(像函数表达式、构造函数不会声明提前)