Files
railwaysystem/RuoYi-Vue/ruoyi-ui/node_modules2/ml-array-max/src/index.js
T
2026-09-10 15:40:10 +08:00

38 lines
894 B
JavaScript

import { isAnyArray } from 'is-any-array';
export default function max(input, options = {}) {
if (!isAnyArray(input)) {
throw new TypeError('input must be an array');
}
if (input.length === 0) {
throw new TypeError('input must not be empty');
}
const { fromIndex = 0, toIndex = input.length } = options;
if (
fromIndex < 0 ||
fromIndex >= input.length ||
!Number.isInteger(fromIndex)
) {
throw new Error('fromIndex must be a positive integer smaller than length');
}
if (
toIndex <= fromIndex ||
toIndex > input.length ||
!Number.isInteger(toIndex)
) {
throw new Error(
'toIndex must be an integer greater than fromIndex and at most equal to length',
);
}
let maxValue = input[fromIndex];
for (let i = fromIndex + 1; i < toIndex; i++) {
if (input[i] > maxValue) maxValue = input[i];
}
return maxValue;
}