我假设我的JSON数据存在问题,但我似乎无法调试。
我从服务中获取的数据片段如下:
{
"result" :{
"version" : "0.1",
},
"recordData":{
"carId": {
"config": "auto",
"val": "none"
},
"carName": {
"config": "manual",
"val": "bmw"
}
}
My Angular代码如下:
var modifyModel = function(data){
return {
carId: data.carId.val,
carName: data.carName.val
};
};
if (data.recordData){
modeldata.results = data.recordData.map(modifyModel);
}
return modeldata;
我有相同的代码处理另一个JSON请求,但数据作为一个数组出现,我从上面得到的错误是:
TypeError: data.recordData.map is not a function
所以我想我需要以某种方式清理收到的数据?
答案 0 :(得分:1)
使用map函数它只适用于数组。 例如:
var array = [{key:1, value:10}, {key:2, value:20}, {key:3, value: 30}];
var reformattedArray = array.map(function(obj){
var rObj = {};
rObj[obj.key] = obj.value;
return rObj;
});
// reformattedArray is now [{1:10}, {2:20}, {3:30}],
// array is still [{key:1, value:10}, {key:2, value:20}, {key:3, value: 30}]
请参阅文档。 Array.prototype.map()