@morjs/runtime-base
Version:
mor runtime base
25 lines • 780 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.compose = void 0;
var tslib_1 = require("tslib");
/**
* 将多个函数合并为一个函数
* @param stack - 函数堆栈
* @returns 合并后的函数
*/
function compose(stack) {
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
for (var _a = 0, stack_1 = stack; _a < stack_1.length; _a++) {
var fn = stack_1[_a];
if (Object.prototype.toString.call(fn) === '[object Function]') {
fn.call.apply(fn, tslib_1.__spreadArray([this], args, false));
}
}
};
}
exports.compose = compose;
//# sourceMappingURL=compose.js.map