ut2
Version:
一个现代 JavaScript 实用工具库。[点击查看在线文档]。
26 lines (22 loc) • 613 B
JavaScript
;
var defaultTo = require('./defaultTo.js');
var helpers = require('./internals/helpers.js');
var native = require('./internals/native.js');
var toNumber = require('./toNumber.js');
function before(n, func) {
if (typeof func !== 'function') {
throw new TypeError(helpers.FUNC_ERROR_TEXT);
}
var result;
n = defaultTo(toNumber(n), 0);
return function () {
if (--n > 0) {
result = func.apply(this, arguments);
}
if (n <= 1) {
func = native.nativeUndefined;
}
return result;
};
}
module.exports = before;