js函数中的几个特点

定义函数有两种方式:函数声明 函数表达式

1.函数声明是这样的:

function box(arg0,arg1,arg2){
  //函数体
}

关于函数声明有一个重要的特征:函数声明提升,也就是说执行代码之前会将先读取函数声明,也就说可以先调用,再声明。

sayHi(arg0,arg1,arg2);
function sayHi(arg0,arg1,arg2){

 //函数体
}

2.函数表达式是这样的:

var box = function(arg0,arg1,arg2){
 //函数体
}

 对于函数表达式必须先赋值,再调用 

var box = function(arg0,arg1,arg2){
 //函数体
}
box(11,2,3);

不要这样做:

if(condition){   
    function box(){     
        //aaaa   
     }
}else{ 
    function box(){    
     //bbbb   
    } 
}

这样会将函数声明提升,只会认第二个,但是如果用函数表达式就可以了

var box;
if(condition){   
    box = function(){     
        //aaaa   
     }
}else{ 
    box = function(){    
     //bbbb   
    } 
}

  

  

  

原文地址:https://www.cnblogs.com/bless19946/p/5871171.html