变量提升
function fun(){
console.log(num);
var num = 20;
}
相当于 :
function fun(){
var num;
console.log(num);
Num = 20;
}
在函数体内部,声明变量,会把该声明提升到函数体的最顶端。 只提升变量声明,不赋值。
函数参数
1.arguments是存储了函数传送过过来实参
2.Javascript在创建函数的同时,会在函数内部创建一个arguments对象实例
3.arguments对象只有函数开始时才可用。函数的 arguments 对象并不是一个数组,访问单个参数的方式与访问数组元素的方式相同
4.arguments对象的长度是由实参个数而不是形参个数决定的