2012-04-15 61 views
0

我在JQuery中JSON对象,看起来像:jQuery的合并在JSON对象两个字段

["state":"06","population":9},{"state":"32","population":13},{"state":"01","population":4}, 

我想就像一个JSON对象来结束:

{"06":9,"32":13,"01":4} 

我会怎么做这在JQuery中?

谢谢!

+0

迭代这个数组和值复制到一个新的对象?不要真的看到问题..当然,你必须首先将JSON解析为一个JavaScript数组。查看MDN JavaScript指南以了解有关如何使用数组和对象的基础知识:https://developer.mozilla.org/en/JavaScript/Guide – 2012-04-15 02:33:23

回答

1

你会想要使用.each方法。如果my_array拥有你所描述的原始数组,这应该做到这一点:

var result = {}; 
$.each(my_array, function(index, val) { 
    result[val.state] = val.population; 
}); 
+0

('result'以您描述的输出结束) – rjz 2012-04-15 02:33:53

+0

您可以省略这些参数并使用'result [this.state] = this.population',而不是使用'index,val'参数。我不确定哪一个更好*本身,但我只是想我会发布此完整性。 – Reid 2012-04-15 02:37:08

+0

这是一个很好的观点。我习惯于仅在遍历jQuery集合时使用简短语法,并遵循'forEach'风格(尽管相反 - 从来没有得到过!)用于其他类型。 – rjz 2012-04-15 02:40:05