最近看到 2 种不错的 JavaScript 的匿名函数写法,mark 一下
# 写法一:多级函数调用
function xhr(respond) { | |
return function(options) { | |
return options.m + options.n + respond.h | |
} | |
} | |
function xhr({h : 1})({m: 2, n: 3}) | |
// 6 |
# 写法二: 函数类型匹配
var Handler = { | |
extend: function(obj) { | |
return obj.m * obj.n | |
} | |
} | |
Handler.gen = function(obj) { | |
return obj.m + obj.n | |
} | |
function xhr(type) { | |
if (Handler[type]) { | |
return Handler[type]({ | |
m: 2, | |
n: 3 | |
}) | |
} | |
return 0 | |
} | |
xhr('gen') // 5 | |
xhr('extend') // 6 |
这两种基本写法还可以随便扩展