Ember.Map Class packages/ember-metal/lib/map.js:176


PRIVATE

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:

  1. keys: an OrderedSet of all of the existing keys
  2. values: a JavaScript Object indexed by the Ember.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.

Show:

Methods

Properties

Show:

copy

Ember.Map

Returns:

Ember.Map

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 *
Show:

length

number

This property will change as the number of objects in the map changes.

Default: 0