@jonahsnider/util

    Class MathMap<K>Alpha

    A DefaultMap with methods for performing basic math operations that mutate the data.

    Type Parameters

    • K

    Hierarchy (View Summary)

    Index

    Constructors

    • Alpha

      Create a new DefaultMap with a specified default value.

      Time complexity: O(n)

      Space complexity: O(n)

      Type Parameters

      • K

      Parameters

      • defaultValue: number

        The default value to use for missing keys

      • Optionalentries: null | Iterable<readonly [unknown, unknown]>

      Returns MathMap<K>

      const map = new DefaultMap(0);
      
    • Alpha

      Create a new DefaultMap with a specified function to generate default values.

      Time complexity: O(n)

      Space complexity: O(n)

      Type Parameters

      • K

      Parameters

      • defaultValueFn: (key: K) => number

        The function to generate default values

      • Optionalentries: null | Iterable<readonly [unknown, unknown]>

      Returns MathMap<K>

      const map = new DefaultMap(key => key.toUpperCase());
      

    Properties

    "[toStringTag]": string
    size: number

    the number of elements in the Map.

    "[species]": MapConstructor

    Methods

    • Alpha

      Returns an iterable of entries in the map.

      Returns IterableIterator<[K, number]>

    • Alpha

      Add an addend to the value for a given key.

      Parameters

      • key: K

        The key to update the value of

      • addend: number

        The value to add to the current value

      Returns number

      The updated value

      map.add('a', 1);
      
    • Alpha

      Returns void

    • Alpha

      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.

    • Alpha

      Divide the value for a given key by a divisor.

      Parameters

      • key: K

        The key to update the value of

      • divisor: number

        The value to divide the current value by

      Returns number

      The updated value

      map.divide('a', 1);
      
    • Alpha

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

      Returns IterableIterator<[K, number]>

    • Alpha

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

      Returns void

    • Alpha

      Get the value for a given key, or the default value if it's missing.

      Time complexity: O(1)

      Space complexity: O(1)

      Parameters

      • key: K

        The key to get the value for

      Returns number

      The value for key, or the default value if it's missing

      map.get('a');
      
    • Alpha

      Parameters

      • key: K

      Returns boolean

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

    • Alpha

      Returns an iterable of keys in the map

      Returns IterableIterator<K>

    • Alpha

      Multiply a multiplicand by the value for a given key.

      Parameters

      • key: K

        The key to update the value of

      • multiplicand: number

        The value to multiply the current value by

      Returns number

      The updated value

      map.multiply('a', 1);
      
    • Alpha

      Raise the value for a given key to an exponent.

      Parameters

      • key: K

        The key to update the value of

      • exponent: number

        The exponent to raise the current value to

      Returns number

      The updated value

      map.pow('a', 2);
      
    • Alpha

      Take the _n_th root of the value for a given key.

      Parameters

      • key: K

        The key to get the _n_th root of

      • root: number

        The root to get

      Returns number

      The nth root of the value for key

      map.root('a', 2);
      
    • Alpha

      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

    • Alpha

      Square root of the value for a given key.

      Parameters

      • key: K

        The key to get the square root of

      Returns number

      The square root of the value for key

      map.sqrt('a');
      
    • Alpha

      Subtract a subtrahend from the value for a given key.

      Parameters

      • key: K

        The key to update the value of

      • subtrahend: number

        The value to subtract from the current value

      Returns number

      The updated value

      map.subtract('a', 1);
      
    • Alpha

      Returns an iterable of values in the map

      Returns IterableIterator<number>

    MMNEPVFCICPMFPCPTTAAATR