高阶函数

Posted shulan-hu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了高阶函数相关的知识,希望对你有一定的参考价值。

一、包含函数参数的函数是高阶函数。

二、返回值是函数的函数是高阶函数。

三、例1:异步请求成功或者失败后调用函数,回调函数

// 参数callback为一个函数

function getUserInfo (userId, callback) {

  $.ajax({

    type: ‘GET‘,

    url: ‘http://xxx.com/getUserInfoById?userId=‘ + userId,

    success: function (result) {

      if (typeof callback === ‘function‘) {

        callback(result)

      }

    }

  })

}

四、数组的sort方法接受的参数也是一个函数。

五 、例2:函数节流

function throttle (fn, interval) {

  let _fn = fn

  let timer

  let isFirstCall = true

  return function () {

    let args = arguments

    let _this = this

    if ( isFirstCall ) {

      _fn.apply(_this, args)

      isFirstCall = false

      return false

    }

    if (timer) {

      return false

    }

    timer = setTimeout(function () {

      clearTimeout(timer)

      timer = null

      _fn.apply(_this, args)

    }, interval || 800)

  }

}

以上是关于高阶函数的主要内容,如果未能解决你的问题,请参考以下文章

Kotlin的高阶函数和常用高阶函数

Kotlin小知识之高阶函数

高阶函数

高阶函数

高阶函数:声明实现(定义)与调用

函数高阶函数