Map

Sass's map type.

⚠️ Heads up!

This map type is represented as a list of key-value pairs rather than a mapping from keys to values. The only way to find the value associated with a given key is to iterate through the map checking for that key. Maps created through this API are still forbidden from having duplicate keys.

Hierarchy

  • Map

Constructors

  • Creates a new Sass map.

    ⚠️ Heads up!

    The initial keys and values of the map are undefined. They must be set using setKey and setValue before accessing them or passing the map back to Sass.

    Example

    const map = new sass.types.Map(2);
    map.setKey(0, new sass.types.String("width"));
    map.setValue(0, new sass.types.Number(300, "px"));
    map.setKey(1, new sass.types.String("height"));
    map.setValue(1, new sass.types.Number(100, "px"));
    map; // (width: 300px, height: 100px)

    Parameters

    • length: number

      The number of (initially undefined) key/value pairs in the map.

    Returns Map

Methods

  • Returns the key in the key/value pair at index.

    Example

    // map is `(width: 300px, height: 100px)`
    map.getKey(0); // width
    map.getKey(1); // height

    Throws

    Error if index is less than 0 or greater than or equal to the number of pairs in this map.

    Parameters

    • index: number

      A (0-based) index of a key/value pair in this map.

    Returns LegacyValue

  • Returns the number of key/value pairs in this map.

    Example

    // map is `("light": 200, "medium": 400, "bold": 600)`
    map.getLength(); // 3

    // map is `(width: 300px, height: 100px)`
    map.getLength(); // 2

    Returns number

  • Returns the value in the key/value pair at index.

    Example

    // map is `(width: 300px, height: 100px)`
    map.getValue(0); // 300px
    map.getValue(1); // 100px

    Throws

    Error if index is less than 0 or greater than or equal to the number of pairs in this map.

    Parameters

    • index: number

      A (0-based) index of a key/value pair in this map.

    Returns LegacyValue

  • Sets the value in the key/value pair at index to value.

    Example

    // map is `("light": 200, "medium": 400, "bold": 600)`
    map.setValue(1, new sass.types.String("lighter"));
    map; // ("lighter": 200, "medium": 300, "bold": 600)

    Throws

    Error if index is less than 0 or greater than or equal to the number of pairs in this map.

    Parameters

    • index: number

      A (0-based) index of a key/value pair in this map.

    • key: LegacyValue

    Returns void

  • Sets the value in the key/value pair at index to value.

    Example

    // map is `("light": 200, "medium": 400, "bold": 600)`
    map.setValue(1, new sass.types.Number(300));
    map; // ("light": 200, "medium": 300, "bold": 600)

    Throws

    Error if index is less than 0 or greater than or equal to the number of pairs in this map.

    Parameters

    • index: number

      A (0-based) index of a key/value pair in this map.

    • value: LegacyValue

    Returns void