我有一个如下所示的json文件:
{
"@id": "2",
"@samsid": "d7058536c89b46c0b58117eff64372f7",
"@productname": "Another paid for",
"@downloaddate": "2013-05-28 11:37:12Z",
"@downloadlocation":
"2AFoGZVJpFHzspQD9UoE2C4VFYc8idiO4ebaRx4uEvtG+79DjkOUjJQjp9lJdSk54KIbFqzr",
"@upgradeavailable": "2wECEpVJpFHS",
"@downlaodstatus": "3QGf15VJpFFrUzr6oxwoew=="
}
我想更新属性@id
的值,例如(@id:2
到@id:4
)。
我该怎么做?
答案 0 :(得分:3)
更新:既然你刚才提到你想把它弄成一个文件!您仍然可以将json设置为如下所示的变量,然后设置它的值。然后使用JSON.stringify()将其转换为字符串,然后将其写入后端的文件中。这实际上取决于系统的设计方式。
我不确定为什么,但由于你的JSON对象的密钥中有@
,你必须得到并设置它们:
//assign into a variable
var x = {
"@id": "2",
"@samsid": "d7058536c89b46c0b58117eff64372f7",
"@productname": "Another paid for",
"@downloaddate": "2013-05-28 11:37:12Z",
"@downloadlocation":
"2AFoGZVJpFHzspQD9UoE2C4VFYc8idiO4ebaRx4uEvtG+79DjkOUjJQjp9lJdSk54KIbFqzr",
"@upgradeavailable": "2wECEpVJpFHS",
"@downlaodstatus": "3QGf15VJpFFrUzr6oxwoew=="
};
alert(x["@id"]); //shows 2
x["@id"] = 4
alert(x["@id"]);//shows 4
看一个工作小提琴:http://jsfiddle.net/jPa6n/
答案 1 :(得分:0)
如果你使用javascript和一些库尝试这样的东西(我使用jQuery,因为它很受欢迎)
var a = JSON.parse('{"@id": "2","@samsid": "d7058536c89b46c0b58117eff64372f7","@productname": "Another paid for","@downloaddate": "2013-05-28 11:37:12Z","@downloadlocation": "2AFoGZVJpFHzspQD9UoE2C4VFYc8idiO4ebaRx4uEvtG+79DjkOUjJQjp9lJdSk54KIbFqzr","@upgradeavailable": "2wECEpVJpFHS","@downlaodstatus": "3QGf15VJpFFrUzr6oxwoew=="}');
a['@id'] = 4;
var b = JSON.stringify(a);