我以JSON的形式从源获取数据。让我们说JSON看起来像这样
var data = [
{"city" : "Bangalore", "population" : "2460832"}
]
我将此数据对象传递到kendo网格中,并且我将使用其开箱即用的功能来格式化数字。所以,我需要与看起来像这个
的对象文字相同的JSONvar data = [{city : "Bangalore", population: 2460832}]
是否有任何库,功能或简单方法来实现这一目标?
答案 0 :(得分:2)
您可以iterate over the Object
s in the Array
修改每个population
属性,将其值从字符串转换为parseInt()
or similar的数字:
var data = [
{"city" : "Bangalore", "population" : "2460832"}
];
data.forEach(function (entry) {
entry.population = parseInt(entry.population, 10);
});
console.log(data[0].population); // 2460832
console.log(typeof data[0].population); // 'number'
答案 1 :(得分:0)
您可以按照以下想法将JSON转换为对象文字:
(function() {
var json =
[
{
"id": 101,
"title": 'title 1'
},
{
"id": 103,
"title": 'title 3'
},
{
"id": 104,
"title": 'title 4'
}
];
var result = {};
for (var key in json) {
var json_temp = {}
json_temp.title = json[key].title;
result[json[key].id] = json_temp;
}
console.log(result);
})();
输出将是:
Object {
101: Object {
title: "title 1"
}
102: Object {
title: "title 2"
}
103: Object {
title: "title 3"
}
}