How can I add a key/value pair to a JavaScript object?

James Skidmore picture James Skidmore · Jul 23, 2009 · Viewed 2.5M times · Source

Here is my object literal:

var obj = {key1: value1, key2: value2};

How can I add field key3 with value3 to the object?

Answer

Ionuț G. Stan picture Ionuț G. Stan · Jul 23, 2009

There are two ways to add new properties to an object:

var obj = {
    key1: value1,
    key2: value2
};

Using dot notation:

obj.key3 = "value3";

Using square bracket notation:

obj["key3"] = "value3";

The first form is used when you know the name of the property. The second form is used when the name of the property is dynamically determined. Like in this example:

var getProperty = function (propertyName) {
    return obj[propertyName];
};

getProperty("key1");
getProperty("key2");
getProperty("key3");

A real JavaScript array can be constructed using either:

The Array literal notation:

var arr = [];

The Array constructor notation:

var arr = new Array();