【发布时间】:2014-08-09 22:31:22
【问题描述】:
我正在尝试更改我的 json 对象的属性名称 /attr 名称。我尝试这样做,但什么都不会改变。我需要在看到输入 json 后制作 json 对象并将其转换为 outjson
function changeData(data){
var title;
for(var i = 0; i < data.length; i++){
if(data[i].hasOwnProperty("displayName")){
data[i]["label"] = data[i]["displayName"];
delete data[i]["displayName"];
}
if(data[i].hasOwnProperty("displayDetail")){
data[i]["title"] = data[i]["displayDetail"];
delete data[i]["displayDetail"];
}
if(data[i].hasOwnProperty("inputType")){
if(data[i]["inputType"]=="NUMBER"){
data[i]["type"]="number"
}else if(data[i]["inputType"]=="TEXT"){
data[i]["type"]="text"
}else if(data[i]["inputType"]=="SWTICH"){
data[i]["type"]="select"
}
delete data[i]["inputType"];
}
}
console.log(data);
}
【问题讨论】:
-
你为什么把数据当作一个数组?
-
您正试图迭代一个对象,就好像它是一个数组一样。那是行不通的。
data.length未定义。 -
哦..对不起,我会尝试..如果你得到解决方案。请发布直到我尝试
-
还是出不来..:(我用的是size而不是length
-
您可能想要一个
for.. in循环,例如for (var i in data)
标签: javascript jquery