Wondering what’s next for npm?Check out our public roadmap! »

    es6-map

    0.1.5 • Public • Published

    es6-map

    Map collection as specified in ECMAScript6

    Warning:
    v0.1 version does not ensure O(1) algorithm complexity (but O(n)). This shortcoming will be addressed in v1.0

    Usage

    It’s safest to use es6-map as a ponyfill – a polyfill which doesn’t touch global objects:

    var Map = require('es6-map');

    If you want to make sure your environment implements Map globally, do:

    require('es6-map/implement');

    If you strictly want to use the polyfill even if the native Map exists, do:

    var Map = require('es6-map/polyfill');

    Installation

    $ npm install es6-map
    

    To port it to Browser or any other (non CJS) environment, use your favorite CJS bundler. No favorite yet? Try: Browserify, Webmake or Webpack

    API

    Best is to refer to specification. Still if you want quick look, follow examples:

    var Map = require('es6-map');
     
    var x = {}, y = {}, map = new Map([['raz', 'one'], ['dwa', 'two'], [x, y]]);
     
    map.size;                 // 3
    map.get('raz');           // 'one'
    map.get(x);               // y
    map.has('raz');           // true
    map.has(x);               // true
    map.has('foo');           // false
    map.set('trzy', 'three'); // map
    map.size                  // 4
    map.get('trzy');          // 'three'
    map.has('trzy');          // true
    map.has('dwa');           // true
    map.delete('dwa');        // true
    map.size;                 // 3
     
    map.forEach(function (value, key) {
      // { 'raz', 'one' }, { x, y }, { 'trzy', 'three' } iterated
    });
     
    // FF nightly only:
    for (value of map) {
     // ['raz', 'one'], [x, y], ['trzy', 'three'] iterated
    }
     
    var iterator = map.values();
     
    iterator.next(); // { done: false, value: 'one' }
    iterator.next(); // { done: false, value: y }
    iterator.next(); // { done: false, value: 'three' }
    iterator.next(); // { done: true, value: undefined }
     
    map.clear(); // undefined
    map.size; // 0

    Tests Build Status

    $ npm test
    

    Install

    npm i es6-map

    DownloadsWeekly Downloads

    1,871,538

    Version

    0.1.5

    License

    MIT

    Last publish

    Collaborators

    • avatar