我正在尝试将csv文件解析为JSON,这已经完成,并且工作正常。
现在,我需要将整个JSON中的“ product_code”键重命名为“ value”,并复制它(将第二次迭代命名为“ label”)。两者的值将保持相同。我无法编辑csv文件,这需要在JavaScript / jQuery中完成。
希望这可以更清楚地解释它:
现有:
{
"brand":"BrandName1",
"product_code":"001",
"product_name":"White Picture Frame",
"product_barcode":"1009842098"
},
{
"brand":"BrandName2",
"product_code":"002",
"product_name":"Yellow Picture Frame",
"product_barcode":"0982149872"
}
我希望将其更改为:
{
"brand":"BrandName1",
"value":"001",
"label":"001",
"product_name":"White Picture Frame",
"product_barcode":"1009842098"
},
{
"brand":"BrandName2",
"value":"002",
"label":"002",
"product_name":"Yellow Picture Frame",
"product_barcode":"0982149872"
}
这样就可以与jQuery Autocomplete一起使用。
任何帮助,不胜感激!我是JSON的新手。
最佳答案
最好的方法是JSON.parse()
数据,然后遍历其构建的对象中的项目并添加所需的键。就像是:
var data = JSON.parse(myJsonString);
for (var i = 0; i < data; i++) {
data[i].value = data[i].product_code;
data[i].label = data[i].product_code;
data[i].product_code = undefined;
}
编辑:代替将
product_code
更改为undefined
,您可以使用delete data[i].product_code;
将其完全删除。有关更多信息,请参见此处:https://stackoverflow.com/a/3455416/5169684。