Skip to content

匿名函数

  • function关键字后没有函数名(即标识符)的函数
  1. 定义匿名函数

    javascript
    var sayHi=function(){
      alert('Hi!');
    }
  2. 调用匿名函数

PS:必须在使用前先赋值,否则会报错

如:

javascript
sayHi();	//报错:函数还不存在
let sayHi=function(){
  alert("Hi!");
}
  • 正确使用匿名函数

    javascript
    let sayHi=function(){
      alert("Hi!");
    }
    sayHi();
  • 条件判断使用不同的匿名函数

    javascript
    let sayHi;
    if(条件){
      sayHi=function(){
        console.log("Hi!");
      }
    }else{
      sayHi=function(){
        console.log("Yo!");
      }
    }
    • 也可以用于在一个函数中把另一个函数当作值返回

      javascript
      function createComparisonFunction(propertyName){
        //返回一个匿名函数,此时该匿名函数相当于一个函数表达式(任何时候,只要函数被当作值使用,就是一个函数表达式)
        return function(object1,object2){
          let value1=object1[propertyName];
          let value2=objcet2[propertyName];
          
          if(value1<value2){
            return -1;
          }else if(value1>value2){
            return 1;
          }else{
            return 0;
          }
        }
      }