Javascript 如何删除JSON对象键中的空格
我的输出如下所示:Javascript 如何删除JSON对象键中的空格,javascript,Javascript,我的输出如下所示: 输出={ “新教室”:[{ “名称”:“苹果”, “年龄”:“6”, “百分比”:“24.00%” }, { “名称”:“橙色”, “年龄”:“5”, “百分比”:“9.88%” }, { “名称”:“绿色”, “年龄”:“2”, “百分比”:“27.27%” }, { “名称”:“灰色”, “年龄”:“6”, “百分比”:“12.63%” }] } 如何将新教室替换为新教室,新教室并不总是一个“新教室”。它可能是不同的文本 ob = JSON.parse(output);
输出={
“新教室”:[{
“名称”:“苹果”,
“年龄”:“6”,
“百分比”:“24.00%”
}, {
“名称”:“橙色”,
“年龄”:“5”,
“百分比”:“9.88%”
}, {
“名称”:“绿色”,
“年龄”:“2”,
“百分比”:“27.27%”
}, {
“名称”:“灰色”,
“年龄”:“6”,
“百分比”:“12.63%”
}]
}
如何将新教室
替换为新教室
,新教室并不总是一个“新教室”。它可能是不同的文本
ob = JSON.parse(output);
alert(Object.keys(ob))
当我这样做时,我得到的是
newchoorkshicle
作为键您可以在接收到的对象中循环顶级属性名称,检测是否有空格,并删除空格。(您不需要这样做,它们是完全有效的属性名称,但如果需要,您可以这样做。)
var输出={“新教室”:[{“名称”:“苹果”,“年龄”:“6”,“百分比”:“24.00%”,{“名称”:“橙色”,“年龄”:“5”,“百分比”:“9.88%”,{“名称”:“绿色”,“年龄”:“2”,“百分比”:“27.27%”,{“名称”:“灰色”,“年龄”:“6”,“百分比”:“12.63%”,};
变量名,newName;
//循环遍历属性名称
for(输出中的变量名称){
//获取不带空格的名称
newName=name.replace(//g,“”);
//如果那不一样的话。。。
if(newName!=名称){
//创建新属性
输出[新名称]=输出[名称];
//删除旧的
删除输出[名称];
}
}
控制台日志(输出)代码>您可以循环查看接收对象中的顶级属性名称,检测任何带有空格的属性,然后删除空格。(您不需要这样做,它们是完全有效的属性名称,但如果需要,您可以这样做。)
var输出={“新教室”:[{“名称”:“苹果”,“年龄”:“6”,“百分比”:“24.00%”,{“名称”:“橙色”,“年龄”:“5”,“百分比”:“9.88%”,{“名称”:“绿色”,“年龄”:“2”,“百分比”:“27.27%”,{“名称”:“灰色”,“年龄”:“6”,“百分比”:“12.63%”,};
变量名,newName;
//循环遍历属性名称
for(输出中的变量名称){
//获取不带空格的名称
newName=name.replace(//g,“”);
//如果那不一样的话。。。
if(newName!=名称){
//创建新属性
输出[新名称]=输出[名称];
//删除旧的
删除输出[名称];
}
}
控制台日志(输出)代码>
- 使用
Object.keys
获取对象的所有键
- 使用
String#replace
替换String
var obj={
“新教室”:[{
“名称”:“苹果”,
“年龄”:“6”,
“百分比”:“24.00%”
}, {
“名称”:“橙色”,
“年龄”:“5”,
“百分比”:“9.88%”
}, {
“名称”:“绿色”,
“年龄”:“2”,
“百分比”:“27.27%”
}, {
“名称”:“灰色”,
“年龄”:“6”,
“百分比”:“12.63%”
}]
};
Object.keys(obj).forEach(函数(key){
替换变量=键。替换(“”,”);
如果(键!==已替换){
obj[替换]=obj[键];
删除obj[key];
}
});
控制台日志(obj)代码>
- 使用
Object.keys
获取对象的所有键
- 使用
String#replace
替换String
var obj={
“新教室”:[{
“名称”:“苹果”,
“年龄”:“6”,
“百分比”:“24.00%”
}, {
“名称”:“橙色”,
“年龄”:“5”,
“百分比”:“9.88%”
}, {
“名称”:“绿色”,
“年龄”:“2”,
“百分比”:“27.27%”
}, {
“名称”:“灰色”,
“年龄”:“6”,
“百分比”:“12.63%”
}]
};
Object.keys(obj).forEach(函数(key){
替换变量=键。替换(“”,”);
如果(键!==已替换){
obj[替换]=obj[键];
删除obj[key];
}
});
控制台日志(obj)
在json
的每个键中循环,然后解析
试试regexp
var word=“新教室”
word=word.replace(/\s/g',);
log(word)
在json
的每个键中循环,然后解析
试试regexp
var word=“新教室”
word=word.replace(/\s/g',);
console.log(word)
所以如果Percentage
有一些空格,这就不起作用了?@Mahi:问题不是我的印象。不,不会,因为我们只处理顶级对象。当然,同一个主体可以应用于从属数组中的对象……因此,如果百分比有一些空格,那么这就不起作用了?@Mahi:问题不在我的印象中。不,不会,因为我们只处理顶级对象。当然,相同的主体可以应用于从属数组中的对象…使用regex替换,否则它只替换第一个空格。使用regex替换,否则它只替换第一个空格。