|
阅读:6025回复:0
求助,有没有那位大佬详解一下柯里化,不是很懂function createCurry(func, args) {
var arity = func.length;
var args = args || [];
return function() {
var _args = [].slice.call(arguments);
[].push.apply(_args, args);
if (_args.length < arity) {
return createCurry.call(this, func, _args);
}
return func.apply(this, _args);
}
}
function check(targetString, reg) {
return reg.test(targetString);
}
var _check = createCurry(check);
var checkPhone = _check(/^1[34578]\d{9}$/);
var checkEmail = _check(/^(\w)+(\.\w+)*@(\w)+((\.\w+)+)$/);
var a = checkPhone('183888888');
var b = checkEmail('xxxxx@test.com');
console.log(a)
console.log(b) |
|