Class Collection<K, V>

A Map with some Array-like additions.

Type Parameters

  • K

  • V

Hierarchy

Constructors

  • Type Parameters

    • K

    • V

    Parameters

    • Optional entries: null | readonly (readonly [K, V])[]

    Returns Collection<K, V>

  • Type Parameters

    • K

    • V

    Parameters

    • Optional iterable: null | Iterable<readonly [K, V]>

    Returns Collection<K, V>

Properties

[toStringTag]: string
size: number

Returns

the number of elements in the Map.

[species]: MapConstructor

Accessors

Methods

  • Returns an iterable of entries in the map.

    Returns IterableIterator<[K, V]>

  • Returns void

  • Returns

    true if an element in the Map existed and has been removed, or false if the element does not exist.

    Parameters

    • key: K

    Returns boolean

  • Returns an iterable of key, value pairs for every entry in the map.

    Returns IterableIterator<[K, V]>

  • Type Parameters

    Parameters

    • predicate: ((value: V, index: number, array: V[]) => value is T)
        • (value: V, index: number, array: V[]): value is T
        • Parameters

          • value: V
          • index: number
          • array: V[]

          Returns value is T

    • Optional thisArg: ThisArg

    Returns this is T[]

  • Type Parameters

    Parameters

    • predicate: ((value: V, index: number, array: V[]) => unknown)
        • (value: V, index: number, array: V[]): unknown
        • Parameters

          • value: V
          • index: number
          • array: V[]

          Returns unknown

    • Optional thisArg: ThisArg

    Returns boolean

  • Type Parameters

    Parameters

    • predicate: ((this: ThisArg, value: V, index: number, array: V[]) => value is S)
        • (this: ThisArg, value: V, index: number, array: V[]): value is S
        • Parameters

          • this: ThisArg
          • value: V
          • index: number
          • array: V[]

          Returns value is S

    • Optional thisArg: ThisArg

    Returns S[]

  • Type Parameters

    Parameters

    • predicate: ((this: ThisArg, value: V, index: number, array: V[]) => unknown)
        • (this: ThisArg, value: V, index: number, array: V[]): unknown
        • Parameters

          • this: ThisArg
          • value: V
          • index: number
          • array: V[]

          Returns unknown

    • Optional thisArg: ThisArg

    Returns V[]

  • Type Parameters

    Parameters

    • predicate: ((this: ThisArg, value: V, index: number, obj: V[]) => value is S)
        • (this: ThisArg, value: V, index: number, obj: V[]): value is S
        • Parameters

          • this: ThisArg
          • value: V
          • index: number
          • obj: V[]

          Returns value is S

    • Optional thisArg: ThisArg

    Returns undefined | S

  • Type Parameters

    Parameters

    • predicate: ((this: ThisArg, value: V, index: number, obj: V[]) => unknown)
        • (this: ThisArg, value: V, index: number, obj: V[]): unknown
        • Parameters

          • this: ThisArg
          • value: V
          • index: number
          • obj: V[]

          Returns unknown

    • Optional thisArg: ThisArg

    Returns undefined | V

  • Parameters

    • predicate: ((value: V, index: number, obj: V[]) => unknown)
        • (value: V, index: number, obj: V[]): unknown
        • Parameters

          • value: V
          • index: number
          • obj: V[]

          Returns unknown

    • Optional thisArg: unknown

    Returns number

  • Get the first element, or first X elements if a number is provided.

    Returns undefined | V

  • Parameters

    • amount: number

    Returns V[]

  • Executes a provided function once per each key/value pair in the Map, in insertion order.

    Parameters

    • callbackfn: ((value: V, key: K, map: Map<K, V>) => void)
        • (value: V, key: K, map: Map<K, V>): void
        • Parameters

          • value: V
          • key: K
          • map: Map<K, V>

          Returns void

    • Optional thisArg: any

    Returns void

  • Returns a specified element from the Map object. If the value that is associated to the provided key is an object, then you will get a reference to that object and any change made to that object will effectively modify it inside the Map.

    Returns

    Returns the element associated with the specified key. If no element is associated with the specified key, undefined is returned.

    Parameters

    • key: K

    Returns undefined | V

  • Returns

    boolean indicating whether an element with the specified key exists or not.

    Parameters

    • key: K

    Returns boolean

  • Returns an iterable of keys in the map

    Returns IterableIterator<K>

  • See: Array#map

    Type Parameters

    • T

    Parameters

    • predicate: ((value: V, index: number, obj: V[]) => T)
        • (value: V, index: number, obj: V[]): T
        • Parameters

          • value: V
          • index: number
          • obj: V[]

          Returns T

    • Optional thisArg: unknown

    Returns T[]

  • Pick a random element from the collection, or undefined if the collection is empty.

    Returns undefined | V

  • Parameters

    • predicate: ((previousValue: V, currentValue: V, currentIndex: number, array: V[]) => V)
        • (previousValue: V, currentValue: V, currentIndex: number, array: V[]): V
        • Parameters

          • previousValue: V
          • currentValue: V
          • currentIndex: number
          • array: V[]

          Returns V

    Returns V

  • Parameters

    • predicate: ((previousValue: V, currentValue: V, currentIndex: number, array: V[]) => V)
        • (previousValue: V, currentValue: V, currentIndex: number, array: V[]): V
        • Parameters

          • previousValue: V
          • currentValue: V
          • currentIndex: number
          • array: V[]

          Returns V

    • initialValue: V

    Returns V

  • Type Parameters

    • T

    Parameters

    • predicate: ((previousValue: T, currentValue: V, currentIndex: number, array: V[]) => T)
        • (previousValue: T, currentValue: V, currentIndex: number, array: V[]): T
        • Parameters

          • previousValue: T
          • currentValue: V
          • currentIndex: number
          • array: V[]

          Returns T

    • initialValue: T

    Returns T

  • Parameters

    • predicate: ((previousValue: V, currentValue: V, currentIndex: number, array: V[]) => V)
        • (previousValue: V, currentValue: V, currentIndex: number, array: V[]): V
        • Parameters

          • previousValue: V
          • currentValue: V
          • currentIndex: number
          • array: V[]

          Returns V

    Returns V

  • Parameters

    • predicate: ((previousValue: V, currentValue: V, currentIndex: number, array: V[]) => V)
        • (previousValue: V, currentValue: V, currentIndex: number, array: V[]): V
        • Parameters

          • previousValue: V
          • currentValue: V
          • currentIndex: number
          • array: V[]

          Returns V

    • initialValue: V

    Returns V

  • Type Parameters

    • T

    Parameters

    • predicate: ((previousValue: T, currentValue: V, currentIndex: number, array: V[]) => T)
        • (previousValue: T, currentValue: V, currentIndex: number, array: V[]): T
        • Parameters

          • previousValue: T
          • currentValue: V
          • currentIndex: number
          • array: V[]

          Returns T

    • initialValue: T

    Returns T

  • Adds a new element with a specified key and value to the Map. If an element with the same key already exists, the element will be updated.

    Parameters

    • key: K
    • value: V

    Returns Collection<K, V>

  • Type Parameters

    Parameters

    • predicate: ((value: V, index: number, array: V[]) => unknown)
        • (value: V, index: number, array: V[]): unknown
        • Parameters

          • value: V
          • index: number
          • array: V[]

          Returns unknown

    • Optional thisArg: ThisArg

    Returns boolean

  • Returns an iterable of values in the map

    Returns IterableIterator<V>