我有一个像这样的json:
var x = {“foo:bar”:“xyz”};
我可以通过调用x [“foo:bar”]来获取xyz但是无论如何通过调用bar来获取xzy并删除foo前缀?像x [“bar”]之类的东西? json是从带有名称空间的xml转换而来的,我无法改变它。感谢
答案 0 :(得分:2)
您可以遍历属性名称并删除前缀:
function removePrefix(x){
var temp = {};
for(var key in x){
temp[key.substr(key.indexOf(':')+1)] = x[key];
}
return temp;
}
var x = {"foo:bar":"xyz"};
x = removePrefix(x);
console.log( x['bar'] ); // xzy
console.log( x.bar ); // xyz
答案 1 :(得分:0)
您将创建一个如下所示的JSON字符串:
var x = {"foo":"xyz"};
您当前的密钥:"foo:bar"
在JSON中没有任何特殊含义,它是密钥的一部分。