我刚开始使用JSON,我有一个初学者问题。
我有以这种形式的JSON数据:
[{"price":"0"},{"price":"124"},{"price":"12"},{"price":"0"},{"price":"124"}]
是否可以更改它,因此输出将为[0,124,12,0,124]
?
答案 0 :(得分:2)
var arr = [{"price":"0"},{"price":"124"},{"price":"12"},{"price":"0"},{"price":"124"}]
var arr2 = []
for (i in arr){
arr2.push(arr[i].price)
}
答案 1 :(得分:1)
你可以使用地图功能,
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map
var temp = [{"price":"0"},{"price":"124"},{"price":"12"},{"price":"0"},{"price":"124"}];
var arr = temp .map(function (el) {
return el.price;
});
console.log(arr)
答案 2 :(得分:1)
var array = [{"price":"0"},{"price":"124"},{"price":"12"},{"price":"0"},{"price":"124"}];
var output = array.map(function(each){
return parseInt(each.price);
});
答案 3 :(得分:1)
您可以使用pasrseInt()
函数将字符串转换为整数,使用JSON.parse()
从json字符串创建javascript对象。
所以:
var s = '[{"price":"0"},{"price":"124"},{"price":"12"},{"price":"0"},{"price":"124"}]'
var list = JSON.parse(s)
var newArray = []
for (var i = 0; i < list.length; ++i) {
var element = list[i]
var obj = {}
for (key in element) {
obj[key] = parseInt(element[key])
}
newArray.push(obj)
}
s = JSON.stringify(newArray)
答案 4 :(得分:1)
在jQuery中你可以使用这个函数:
function objectArrayToValueString(objectArray) {
var output = objectArray.map(function (each) {
return parseInt(each.price);
});
return JSON.stringify(output);
}
var objectArray = [{ "price": "0" }, { "price": "124" }, { "price": "12" }, { "price": "0" }, { "price": "124" }];
var result = objectArrayToValueString(objectArray);
alert(result);
&#13;
答案 5 :(得分:0)
只需遍历您的JSON对象数组,将值替换为值为
的JSON对象var arr =[{"price":"0"},{"price":"124"},{"price":"12"},{"price":"0"},"price":"124"}];
for (i in arr){
arr[i]=parseInt(arr[i].price);
}
console.log(arr);