js 高阶函数

168 阅读1分钟

高阶函数

  1. 函数可以作为参数被传递
  2. 函数可以作为返回值输出
// 函数可以作为参数被传递的应用
var appendDiv = function (callback) {
    for (let i = 0; i < 100; i++) {
        var div = document.createElement('div')
        div.innerHTML = i;
        document.body.appendChild(div)

        if (typeof callback === 'function') {
            callback(div)
        }
    }
}

appendDiv(function(node){
    node.style.display = 'none' 
})
// 作为返回值的应用
    var isArray = function (obj){
        return Object.prototype.toString.call(obj) === '[object Array]'
    }
    console.log( isArray([1, 2, 3])); // true