JS 匿名函数

2020-07-07  本文已影响0人  Year_h

什么是匿名函数

1、匿名函数,即没有名称的函数
2、如果单独只写一个匿名函数,此时是不符合语法要求的 会报错。需要给 匿名函数包裹一个括号,使之成为表达式。
3、被小括号包裹的内容会被js识别为一个函数表达式

  (function () {
      console.log('这是一个匿名函数')
    });

二、如何执行匿名函数?

1、需要执行匿名函数 后面追加括号即可 也就是立即执行函数(下一章是立即执行函数的讲解)
(1)方式一:小括号只将匿名函数包裹起来 后面跟随执行的小括号

(function () {
      alert('匿名函数执行方式一')
    })();

(2)小括号将匿名函数以及执行匿名函数的小括号都包裹起来 整体构成一个表达式

  (function () {
      alert('匿名函数执行方式二')
    }());

2、匿名函数传参 与其他普通参数的传参方式一样,调用的时候将参数传入即可

     (function (m) {
      alert(m)
    }('这是匿名函数传进来的参数'));

三、匿名函数的应用

1、绑定事件时的方法

    let item = document.getElementById("item")
    item.onclick = function () {
      alert("我是输入框的点击事件")
    }

2、函数表达式 将匿名函数赋值给一个变量

    let fun2 = function () {
      alert('这是一个函数表达式')
    }
    fun2();

3、对象里面的函数属性

      let obj = {
      name: "Year",
      age: 28,
      hobby: function () {
        return '我喜欢跳舞'
      }
    };
    alert(obj.hobby());

4、回调函数,将匿名函数作为其中的一个参数

    //过滤出值为9的值
    let numArr = [1, 5, 9, 10]
    let newArr = numArr.filter(function (item) {
      if (item !== 9) {
        return item
      }
    });

5、函数返回值,即将函数作为一个返回值

     //内部函数可以访问外部函数的所有变量
    function box() {
      return function() {
        alert("函数作为返回值的应用")
      }
    }
    box()();
上一篇 下一篇

猜你喜欢

热点阅读