1.0.18 • Published 1 year ago

@tsdotnet/array-copy v1.0.18

Weekly downloads
37
License
MIT
Repository
github
Last release
1 year ago

alt text tsdotnet / array-copy

GitHub license npm-publish npm version

A commonly used array copy utility.

Docs

tsdotnet.github.io/array-copy

Usage

import arrayCopy, {arrayCopyTo} from '@tsdotnet/array-copy'

const myCopy = arrayCopy(source);
// myCopy is really a shortcut for:
const myOtherCopy = arrayCopyTo([]);

or

import arrayCopy from '@tsdotnet/array-copy'

const myOtherCopy = arrayCopy.to([]); // same as arrayCopyTo.

Exported

For flexibility, these functions can operate on objects that have a length but are not instances of Array. (ArrayLikeWritable<T>)

arrayCopyTo

/**
 * 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.
 */
export function arrayCopyTo<T, TDestination extends ArrayLikeWritable<T>> (
  source: ArrayLike<T>,
  destination: TDestination,
  sourceIndex: number      = 0,
  destinationIndex: number = 0,
  count: number           = Infinity
): TDestination

arrayCopy

/**
 * 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.
 */
export default function arrayCopy<T> (
  source: ArrayLike<T>,
  sourceIndex: number = 0,
  count: number      = Infinity
): T[]
1.0.18

1 year ago

1.0.17

2 years ago

1.0.16

2 years ago

1.0.15

3 years ago

1.0.14

4 years ago

1.0.13

4 years ago

1.0.11

4 years ago

1.0.12

4 years ago

1.0.10

4 years ago

1.0.9

4 years ago

1.0.8

4 years ago

1.0.7

4 years ago

1.0.6

4 years ago

1.0.5

4 years ago

1.0.4

4 years ago

1.0.3

4 years ago

1.0.2

4 years ago

1.0.1

4 years ago