函数的三种定义方式
<script>
function add(num1){
//body
}
var add = function(){
//body
};
var add = new Function('num1','num2','return num1+num2');
</script>
函数的预解析
function方式:声明提前,预解析时就会声明
var复制表达式:由于复制给变量,预解析是不声明
new Function():预解析是不仅要解析参数,还要实例化,效率低,一般不采用
函数的间接调用
打印:
xh
xm
间接调用的用处:当参数不是一个单独的值,而是一个数组时,为避免遍历提取传参的麻烦,使用间接调用更为方便。
<script>
function add(num1,num2){
return num1 + num2;
}
var datas=[1,2]
console.log(add.apply(window,datas));
</script>