reports/frontend/node_modules/es-toolkit/dist/compat/array/nth.mjs
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

22 lines
686 B
JavaScript

import { isArrayLikeObject } from "../predicate/isArrayLikeObject.mjs";
import { toInteger } from "../util/toInteger.mjs";
//#region src/compat/array/nth.ts
/**
* Gets the element at index `n` of `array`. If `n` is negative, the nth element from the end is returned.
*
* @param array - The array to query.
* @param [n=0] - The index of the element to return.
* @return {T | undefined} Returns the nth element of `array`.
*
* @example
* nth([1, 2, 3], 1); // => 2
* nth([1, 2, 3], -1); // => 3
*/
function nth(array, n = 0) {
if (!isArrayLikeObject(array) || array.length === 0) return;
n = toInteger(n);
if (n < 0) n += array.length;
return array[n];
}
//#endregion
export { nth };