如何在javascript中更新json的属性值

如何在javascript中更新json的属性值,javascript,json,Javascript,Json,我有一个json文件,如下所示: { "@id": "2", "@samsid": "d7058536c89b46c0b58117eff64372f7", "@productname": "Another paid for", "@downloaddate": "2013-05-28 11:37:12Z", "@downloadlocation": "2AFoGZVJpFHzspQD9UoE2C4VFYc8idiO4ebaRx4uEvtG+79DjkOUjJQjp9lJdSk5

我有一个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


我该怎么做呢?

更新:既然你现在提到了,你想把它放进一个文件中!您仍然可以将json设置为如下所示的变量,然后设置其值。然后使用将其转换为字符串,然后将其写入后端的文件中。这实际上取决于系统的设计方式


我不知道为什么,但既然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

看到一把正在工作的小提琴:

更新:既然你现在提到了,你想把它编成一个文件!您仍然可以将json设置为如下所示的变量,然后设置其值。然后使用将其转换为字符串,然后将其写入后端的文件中。这实际上取决于系统的设计方式


我不知道为什么,但既然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

如果您使用javascript,并且有些库尝试了类似的方法(我使用jQuery,因为它很流行),那么请看一个有用的例子:


如果您使用javascript和一些库,请尝试类似的方法(我使用jQuery,因为它很流行)


是否要更新实际文件?是的,我要更新实际文件。在服务器上还是在客户端?您必须在服务器端执行此操作。@vipinkatiyar您的意思是您有一个
.json
文件要更新?那么你的问题就不是javascript问题了!您必须使用另一种语言,很可能是您的后端服务器语言。无论如何,我更新了我的答案。您想更新实际文件吗?是的,我想更新实际文件。在服务器上还是在客户端?您必须在服务器端执行此操作。@vipinkatiyar您的意思是您有一个
.json
文件要更新吗?那么你的问题就不是javascript问题了!您必须使用另一种语言,很可能是您的后端服务器语言。无论如何,我更新了我的答案。