ut2
Version:
一个现代 JavaScript 实用工具库。[点击查看在线文档]。
20 lines (17 loc) • 601 B
JavaScript
import { arrayProtoSlice } from './internals/native.js';
var PLACEHOLDER = {
__ut2_partial_ph__: null
};
var partial = function (func) {
var argsOrig = arrayProtoSlice.call(arguments, 1);
return function () {
var args = [];
var argsPartial = arrayProtoSlice.call(arguments);
for (var i = 0; i < argsOrig.length; i++) {
args[i] = argsOrig[i] === PLACEHOLDER ? argsPartial.shift() : argsOrig[i];
}
return func.apply(this, args.concat(argsPartial));
};
};
partial.placeholder = partial._ = PLACEHOLDER;
export { partial as default };