1、匿名函数
1.匿名函数:定义时候没有任何变量引用的函数
2.匿名函数自调:如果函数只执行一次(function(a,b){ console.log("a="+a); console.log("b="+b); })(1,2);
优点:节约内存空间,调用前和调用后内存中不创建任何函数对象。
2、回调函数(callback)
回调函数:如果一个函数作为对象交给其他函数使用
let arr=[13,6,65,50,23] arr.sort(function(a,b){ return a-b })
3、递归函数
递归函数:循环调用函数本身
var f=function(x){ if(x===2){ return x; }else{ return x*f(x-1); } };
//arguments.callee:相当于函数本身,不推荐使用,在严格模式下不支持使用 use strict function f(x){ if(x===1){ return 1; }else{ return x*arguments.callee(x-1); } }
4、构造函数
构造函数:构造函数习惯上首字母大写
调用方式不一样。作用也不一样(构造函数用来新建实例对象)
function Person(){}
Person person=new Person()