2016-10-10 03:43:44 +02:00
|
|
|
'use strict';
|
2017-05-27 17:36:13 +02:00
|
|
|
var strong = require('./_collection-strong');
|
2016-10-10 03:43:44 +02:00
|
|
|
|
|
|
|
// 23.1 Map Objects
|
2017-05-27 17:36:13 +02:00
|
|
|
module.exports = require('./_collection')('Map', function(get){
|
2016-10-10 03:43:44 +02:00
|
|
|
return function Map(){ return get(this, arguments.length > 0 ? arguments[0] : undefined); };
|
|
|
|
}, {
|
|
|
|
// 23.1.3.6 Map.prototype.get(key)
|
|
|
|
get: function get(key){
|
|
|
|
var entry = strong.getEntry(this, key);
|
|
|
|
return entry && entry.v;
|
|
|
|
},
|
|
|
|
// 23.1.3.9 Map.prototype.set(key, value)
|
|
|
|
set: function set(key, value){
|
|
|
|
return strong.def(this, key === 0 ? 0 : key, value);
|
|
|
|
}
|
|
|
|
}, strong, true);
|