(1)变量声明提前
使用var关键字声明的变量,会在所有代码执行前被声明(但不会赋值)
console.log("a = "+ a); // a已声明,但是值是undefined
var a = 123;
如果声明变量时不使用var关键字,则变量不会被声明提前
console.log("a = "+ a); // a未声明,报错:“a is not defined”
a = 123;
(2)函数声明提前
使用函数声明形式创建的函数:function 函数名(){},它会在所有的代码执行前就被创建,所以可以在函数声明前调用此函数
fun(); // 123
function fun(){
console.log("123");
}
使用函数表达式创建的函数,不会被声明提前,所以不能再声明前调用
fun2(); // 变量fun2只是提前声明但是值是undefined,所以fun2()会报错:“undefined is not a function”
var fun2 = function(){
console.log("我是fun2函数");
};
标签:console,函数,fun2,JavaScript,笔记,var,声明,log
From: https://www.cnblogs.com/zibocoder/p/17033553.html