Javascript - 在对象中插入一个项目

标签 javascript object

如何在 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);            
    }

--------------------已编辑--------------------

我想要以下格式的新colorData:-

{'CA': '#61c419', 'AZ':'#61c419'}

谢谢

最佳答案

<强> Array.prototype.map() 是你的 friend :

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; 
}, {});

关于Javascript - 在对象中插入一个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22932578/

相关文章:

javascript - this.model 不是函数

javascript - 使图像占据 100% 的高度,但不是 100% 的高度(并在缩小时保持图像相同的尺寸)

javascript - 如何在某些情况下更改对象属性的值

javascript - 如何覆盖 Odoo 15 中添加到 core.action_registry 的 JS 函数?

javascript - 什么是 JavaScript 对象和属性?

java - InputStream "int read(byte[] b)"方法参数是引用吗?

javascript - 如何将 ReactJS 添加到现有的 node.js 后端应用程序

数组和整数的 JavaScript TypeError

c++ - C++为我的新对象包装子对象数组的正确方法?

JavaScript:在 while 循环中更改对象中的值