在javaScript中函数就是一个普通的对象
所以
函数可以存储在变量中
函数可以作为参数
函数可以作为返回值
1.函数可以存储在变量中
// 函数就是一个普通的对象 所以它可以存储来变量中let fn = function () {console.log('Hello First-class Function')}fn()
2.函数可以作为参数
// 函数就是一个普通的对象 函数可以作为参数function forEach (array, fn) {for (let i = 0; i < array.length; i++) {fn(array[i])}}
3.函数可以作为返回值
// 函数就是一个普通的对象 函数可以作为返回值// oncefunction once (fn) {let done = falsereturn function () {if (!done) {done = truereturn fn.apply(this, arguments)}}}let pay = once(function (money) {console.log(`支付:${money} RMB`)})// 只会支付一次pay(5)pay(5)pay(5)
