- 函数作为参数传递给另一个函数
- 函数作为函数返回值输出
function fn(callback) {
callback()
}
fn(function() {
console.log('函数作为参数传递');
})
function Fn(x) {
return function(y) {
return x + y
}
}
console.log(Fn(2)(3)); // 5
Function.prototype.before = function(callback) {
// 此处的this: Say
var that = this
return function() {
// 此处的this: window
// 新增的功能
callback()
// 原有基础功能
that()
}
}
function Say() {
console.log('say hellooooo');
}
var sayBefore = Say.before(function() {
console.log('周杰伦');
})
window.sayBefore() // 此处的this: window
注意:要在浏览器控制台打印