A commonly used array copy utility.
importarrayCopy,{arrayCopyTo}from'@tsdotnet/array-copy'constmyCopy=arrayCopy(source);// myCopy is really a shortcut for:constmyOtherCopy=arrayCopyTo([]);or
importarrayCopyfrom'@tsdotnet/array-copy'constmyOtherCopy=arrayCopy.to([]);// same as arrayCopyTo.For flexibility, these functions can operate on objects that have a length but are not instances of Array. (ArrayLikeWritable<T>)
/** * Copies one array to another. * @param source * @param destination * @param sourceIndex * @param destinationIndex * @param count An optional limit to stop copying. Finite values must be no more than the source.length minus the sourceIndex. * @returns The destination array. */exportfunctionarrayCopyTo<T,TDestinationextendsArrayLikeWritable<T>>(source: ArrayLike<T>,destination: TDestination,sourceIndex: number=0,destinationIndex: number=0,count: number=Infinity): TDestination/** * Creates a copy of the array-like object. * Similar to Array.slice(index, length). * @param source * @param sourceIndex * @param count An optional limit to stop copying. Finite values must be no more than the source.length minus the sourceIndex. * @returns The copy of the source array. */exportdefaultfunctionarrayCopy<T>(source: ArrayLike<T>,sourceIndex: number=0,count: number=Infinity): T[]