reports/frontend/node_modules/recharts/es6/util/getEveryNth.js
jtricerolph 1c411e402e Add settings page for managing forecasting API key and URL via UI
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-20 14:37:36 +00:00

27 lines
No EOL
802 B
JavaScript

/**
* Given an array and a number N, return a new array which contains every nTh
* element of the input array. For n below 1, an empty array is returned.
* For n equal to 1, the input array is returned as is.
* For n greater than the length of the array, an array containing the first element
* and every nTh element after that (if any) is returned.
*
* @param array An input array.
* @param n A number specifying which elements to take.
* @returns The result array of the same type as the input array.
*/
export function getEveryNth(array, n) {
if (n < 1) {
return [];
}
if (n === 1) {
return array;
}
var result = [];
for (var i = 0; i < array.length; i += n) {
var item = array[i];
if (item !== undefined) {
result.push(item);
}
}
return result;
}