JS基础学习-特殊函数
特殊函数
匿名函数
JavaScript语法结构并不支持匿名函数的定义
匿名函数本身失去了函数的含义
用法
自调函数
回调函数
自调函数
自已调用自己的函数(省略函数的调用)
语法结构
(function{函数体})();
常用两种写法
(function () {
console.log(‘this is function’);
})();//this is function
(function (a) {
console.log(a);
})(100);
表达式方式定义
(function (a) {
console.log(a);
(100)};
第一个小括号
定义函数
第二个小括号
调用函数
特点
只能被调用一次
应用
优化全局命名空间
回调函数
一个函数作为另一个函数的参数,而作为参数的函数就是回调函数
优点
它可以在不做命名的情况下传递函数(这意味着可以节省全局变量)
可以将一个函数调用操作委托给另一个函数(可以节省一些代码编写工作)
回调函数也有助于提升性能
匿名回调函数
封装–不关心过程,只关心入口和出口
function fn(a,b) {
return a()+ b();
}
var result = fn(function(){return 1;},function (){return 2;});
console.log(result);
作为值的函数
是内部函数的一种特殊用法
在全局作用域中可以得到两个函数实际上只定义了一个函数
在全局作用域中调用内部函数