Simple map for numbers.

Keys not present in map return the defaultValue given in the constructor

// All keys default to zero.
const map = new NumberMap();
map.get(`hello`); // 0

To check if a key is present, use has:

map.has(`hello`); // false

Math:

// Adds 1 by default to value of `hello`
map.add(`hello`); // 1
map.multiply(`hello`, 2); // 2

// Reset key to default value
map.reset(`hello`); // 0

Different default value:

const map = new NumberMap(10);
map.get(`hello`); // 10

Regular set works as well:

map.set(`hello`, 5);
map.add(`hello`, 2); // 7

Type Parameters

  • K

Hierarchy

  • Map<K, number>
    • NumberMap

Constructors

  • Type Parameters

    • K

    Parameters

    • defaultValue: number = 0

    Returns NumberMap<K>

Properties

[toStringTag]: string
defaultValue: number
size: number

the number of elements in the Map.

[species]: MapConstructor

Methods

  • Returns an iterable of entries in the map.

    Returns IterableIterator<[K, number]>

  • Parameters

    • key: K
    • amount: number = 1

    Returns number

  • 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, number]>

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

    Parameters

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

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

          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 number

    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>

  • Parameters

    • key: K
    • amount: number

    Returns number

  • Parameters

    • key: K

    Returns number

  • 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: number

    Returns this

  • Parameters

    • key: K
    • amount: number = 1

    Returns number

  • Returns an iterable of values in the map

    Returns IterableIterator<number>

  • Groups members of an iterable according to the return value of the passed callback.

    Type Parameters

    • K
    • T

    Parameters

    • items: Iterable<T>

      An iterable.

    • keySelector: ((item: T, index: number) => K)

      A callback which will be invoked for each item in items.

        • (item, index): K
        • Parameters

          • item: T
          • index: number

          Returns K

    Returns Map<K, T[]>