Ember.Map Class packages/ember-metal/lib/map.js:176
PRIVATE
Defined in: packages/ember-metal/lib/map.js:176
Module: ember-metal
A Map stores values indexed by keys. Unlike JavaScript's default Objects, the keys of a Map can be any JavaScript object.
Internally, a Map has two data structures:
keys
: an OrderedSet of all of the existing keysvalues
: a JavaScript Object indexed by theEmber.guidFor(key)
When a key/value pair is added for the first time, we
add the key to the keys
OrderedSet, and create or
replace an entry in values
. When an entry is deleted,
we delete its entry in keys
and values
.
create
static
forEach
(callback, self)
Iterate over all the keys and values. Calls the function once for each key, passing in the key and value, in that order.
The keys are guaranteed to be iterated over in insertion order.
Parameters:
- callback Function
- self *
- if passed, the `this` value inside the callback. By default, `this` is the map.
get
(key)
*
Retrieve the value associated with a given key.
Parameters:
- key *
Returns:
- *
- the value associated with the key, or `undefined`
has
(key)
Boolean
Check whether a key is present.
Parameters:
- key *
Returns:
- Boolean
- true if the item was present, false otherwise
remove
(key)
Boolean
Removes a value from the map for an associated key.
Parameters:
- key *
Returns:
- Boolean
- true if an item was removed, false otherwise
set
(key, value)
Adds a value to the map. If a value for the given key has already been provided, the new value will replace the old value.
Parameters:
- key *
- value *
length
number
This property will change as the number of objects in the map changes.
Default: 0