Javascript 删除JSON根
我在JavaScript变量上有以下字符串:Javascript 删除JSON根,javascript,json,Javascript,Json,我在JavaScript变量上有以下字符串: my_Variable = "{"Domini":[{"cod_domini":"1","nom_domini":"Sant Esteve de Palautordera"},{"cod_domini":"2","nom_domini":"Parc Natural del Montseny"},{"cod_domini":"5","nom_domini":"Sant Pere de Vilamajor"},{"cod_domini":"6","nom
my_Variable = "{"Domini":[{"cod_domini":"1","nom_domini":"Sant Esteve de Palautordera"},{"cod_domini":"2","nom_domini":"Parc Natural del Montseny"},{"cod_domini":"5","nom_domini":"Sant Pere de Vilamajor"},{"cod_domini":"6","nom_domini":"Santa Maria i Mosqueroles"}]}"
我需要删除字符串顶部的根Domini
,因此生成的字符串如下所示:
my_Variable = [{"cod_domini":"1","nom_domini":"Sant Esteve de Palautordera"},{"cod_domini":"2","nom_domini":"Parc Natural del Montseny"},{"cod_domini":"5","nom_domini":"Sant Pere de Vilamajor"},{"cod_domini":"6","nom_domini":"Santa Maria i Mosqueroles"}]
我尝试使用JSON.parse()
函数将JSON解析为一个对象,但我不知道如何检索数据并处理它以生成一个没有根的新JSON
我应该使用某种循环吗?很简单:
my_Variable = my_Variable.Domini;
在JSON解析之后
因此,代码如下所示:
my_Variable = "{"Domini":[{"cod_domini":"1","nom_domini":"Sant Esteve de Palautordera"},{"cod_domini":"2","nom_domini":"Parc Natural del Montseny"},{"cod_domini":"5","nom_domini":"Sant Pere de Vilamajor"},{"cod_domini":"6","nom_domini":"Santa Maria i Mosqueroles"}]}";
my_Variable = JSON.parse( my_Variable );
my_Variable = my_Variable.Domini;
console.log( my_Variable ); // [{"cod_domini":"1","nom_domini": ...
如果希望传递变量,请执行以下操作(您提到您已经这样做了,但为了完整性,我添加了它) 解析后,只需执行以下操作:
var JsonWithoutDominiAsRoot = parsedJson.Domini;
您可以“.”遍历新json对象的不同属性。多米尼只是其中之一。考虑到你想在移除密钥后将其恢复为字符串
my_Variable = JSON.stringify(JSON.parse(my_Variable).Domini);
崩溃 将字符串解析为JSON对象
JSON.parse(my_Variable).Domini
返回属性多米尼的值
JSON.stringify(JSON.parse(my_Variable).Domini)
将其重新编码为字符串。var obj=JSON.parse(JSON);
obj=[Object.keys(obj)[0]];
var newJson=JSON.stringify(obj);
或者,避免使用Object.keys等ES5功能:
var obj=JSON.parse(JSON);
for(obj中的var键){
如果(!Object.prototype.hasOwnProperty.call(obj,key))继续;
obj=obj[键];
打破
}
var newJson=JSON.stringify(obj);
为什么要删除根目录?大多数情况下,一旦您将此字符串转换为JSON对象,您就不会引用此根。“根”是否总是被命名为Domini
?非常感谢大家!事实上,这真的很容易!(此解决方案适用于任何根目录-如果您只想获取.Domini,那么当然可以这样做)
JSON.parse(my_Variable).Domini
JSON.stringify(JSON.parse(my_Variable).Domini)