Javascript-在对象中插入一项

Javascript-在对象中插入一项,javascript,object,Javascript,Object,如何在Javascript中的对象中插入项 var colorData = new Object(); var stateData = { states: [ { 'state' : 'CA', 'color' : '#61c419', 'amaguide' : '5'}, { 'state' : 'AZ', 'color' : '#61c419', 'amaguide' : '5'}

如何在
Javascript
中的对象中插入项

var colorData = new Object();
var stateData = {
           states:
            [
              { 'state' : 'CA', 'color' : '#61c419', 'amaguide' : '5'},
              { 'state' : 'AZ', 'color' : '#61c419', 'amaguide' : '5'}
            ]
    }

for (var i = 0; i < stateData.length; i++) {            
       colorData.push(stateData[i].state + ':' + stateData[i].color);            
    }

谢谢

只需将项目分配给对象属性即可
.push()
用于阵列

var o = {};
o.newProperty = 'hier';
o.otherProperty = [1, 2, 3];
是你的朋友:

var stateData = {
           states:
            [
              { 'state' : 'CA', 'color' : '#61c419', 'amaguide' : '5'},
              { 'state' : 'AZ', 'color' : '#61c419', 'amaguide' : '5'}
            ]
    };


var colorData = stateData.states.map(function(ele) {
    return ele.state + ':' + ele.color;
});
如果希望结果为
{CA:'#61c419',AZ:'#61c419'}
,则:

var colorData = stateData.states.reduce(function(v, w) {
    v[w.state] =  w.color;
    return v; 
}, {});

也许阵列更好:

...
var colorData = new Array();
...

试试这个很容易

var colorData = new Object();
var stateData = {
           states:
            [
              { 'state' : 'CA', 'color' : '#61c419', 'amaguide' : '5'},
              { 'state' : 'AZ', 'color' : '#61c419', 'amaguide' : '5'}
            ]
};
for(var i=0; i<stateData.states.length; i++)
{
    colorData[stateData.states[i].state] = stateData.states[i].color;
}

console.log(JSON.stringify(colorData));

@Anup第二个解决方案将为您提供预期的结果。现在的结果是
AZ:“61c419”,CA:“61c419”
。。。。我们怎样才能到达
“AZ”:“#61c419”,“CA”:“#61c419”
?@Anup你所说的没有区别,都是javascript对象的有效语法。嘿,看看我的答案,它比任何其他方法都快。。。Anup@NidhishKrishnan是的,谢谢@NidhishKrishnan这是真的。@NidhishKrishnan您的代码无论如何工作得更快
var colorData = new Object();
var stateData = {
           states:
            [
              { 'state' : 'CA', 'color' : '#61c419', 'amaguide' : '5'},
              { 'state' : 'AZ', 'color' : '#61c419', 'amaguide' : '5'}
            ]
};
for(var i=0; i<stateData.states.length; i++)
{
    colorData[stateData.states[i].state] = stateData.states[i].color;
}

console.log(JSON.stringify(colorData));
{"CA":"#61c419","AZ":"#61c419"}