[英]Javascript insert item into correct position in array of object
[英]Javascript - Insert an item in 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()是您的朋友:
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 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"}
只需將項目分配給對象屬性。 .push()
用於數組。
var o = {};
o.newProperty = 'hier';
o.otherProperty = [1, 2, 3];
也許數組對此更好:
...
var colorData = new Array();
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.