UNPKG

@snipsonian/core

Version:

Core/base reusable javascript code snippets

23 lines (18 loc) 596 B
import { IAddOrRemoveItemsFromArrayCommonOptions } from './addItemAndGetResultingArray'; import getArrayCopy from '../getArrayCopy'; export default function removeItemByIndexAndGetResultingArray<Item = unknown>( arr: Item[], indexToRemove: number, { resultInNewArray = false, }: IAddOrRemoveItemsFromArrayCommonOptions = {}, ): Item[] { if (!arr || arr.length <= indexToRemove) { return arr; } const resultArray = resultInNewArray ? getArrayCopy<Item>(arr) : arr; resultArray.splice(indexToRemove, 1); return resultArray; }