Class Collection<K, V>

A Map with some Array-like additions.

Type Parameters

  • K
  • V

Hierarchy (view full)

Constructors

  • Type Parameters

    • K
    • V

    Parameters

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

    Returns Collection<K, V>

  • Type Parameters

    • K
    • V

    Parameters

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

    Returns Collection<K, V>

Properties

[toStringTag]: string
size: number

the number of elements in the Map.

[species]: MapConstructor

Accessors

  • get empty(): boolean
  • If this collection is empty.

    Returns boolean

Methods

  • Returns an iterable of entries in the map.

    Returns IterableIterator<[K, V]>

  • Returns void

  • Parameters

    • key: K

    Returns boolean

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

  • 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, index, array): value is T
        • Parameters

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

          Returns value is T

    • OptionalthisArg: ThisArg

    Returns this is T[]

  • Type Parameters

    Parameters

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

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

          Returns unknown

    • OptionalthisArg: ThisArg

    Returns boolean

  • Type Parameters

    Parameters

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

          Returns value is S

    • OptionalthisArg: ThisArg

    Returns S[]

  • Type Parameters

    Parameters

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

          Returns unknown

    • OptionalthisArg: ThisArg

    Returns V[]

  • Type Parameters

    Parameters

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

          Returns value is S

    • OptionalthisArg: ThisArg

    Returns undefined | S

  • Type Parameters

    Parameters

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

          Returns unknown

    • OptionalthisArg: ThisArg

    Returns undefined | V

  • Parameters

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

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

          Returns unknown

    • OptionalthisArg: 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, key, map): void
        • Parameters

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

          Returns void

    • OptionalthisArg: 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.

    Parameters

    • key: K

    Returns undefined | V

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

  • Parameters

    • key: K

    Returns boolean

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

  • Returns an iterable of keys in the map

    Returns IterableIterator<K>

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

    Returns undefined | V

  • Parameters

    • amount: number

    Returns V[]

  • See: Array#map

    Type Parameters

    • T

    Parameters

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

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

          Returns T

    • OptionalthisArg: 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, currentValue, currentIndex, array): 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, currentValue, currentIndex, array): 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, currentValue, currentIndex, array): 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, currentValue, currentIndex, array): 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, currentValue, currentIndex, array): 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, currentValue, currentIndex, array): 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 this

  • Type Parameters

    Parameters

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

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

          Returns unknown

    • OptionalthisArg: ThisArg

    Returns boolean

  • Get the values of this collection as an array.

    Returns V[]

  • Returns an iterable of values in the map

    Returns IterableIterator<V>