javascript - 如何在键中不使用 at 符号 (@) 保留此对象数组 - ES2006/ES2020
问题描述
如何让这个对象数组在键中没有 at 符号 (@) 以静态方式,但以动态方式,因为我会有更多给定的情况,并且具有不同的键名;
有时我可能有@SIGLA,或者不在电话中;
如何:
const object = [
{
"@UF": "SP",
"@SIGLA": "PJ",
"@NUM_CONSELHO": "111",
"@NOME": "JAMIL ANDRÉ",
"@ID_PROFISSIONAL": "1221212"
},
{
"@UF": "RJ",
"@SIGLA": "CLT",
"@NUM_CONSELHO": "2222",
"@NOME": "POCARRONTAS",
"@ID_PROFISSIONAL": "212121212"
},]
必须如何:
const object = [
{
"UF": "SP",
"SIGLA": "PJ",
"NUM_CONSELHO": "111",
"NOME": "JAMIL ANDRÉ",
"ID_PROFISSIONAL": "1221212"
},
{
"UF": "RJ",
"SIGLA": "CLT",
"NUM_CONSELHO": "2222",
"NOME": "POCARRONTAS",
"ID_PROFISSIONAL": "212121212"
},
]
解决方案
只需遍历对象并删除@
:
let y = {};
for (key in x) {
y[key.replace(/^@/,'')] = x[key];
}
x = y;
对整个数组执行此操作:
for (let i=0; i<object.length; i++) {
let y = {};
for (key in object[i]) {
y[key.replace(/^@/,'')] = object[i][key];
}
object[i] = y;
}
推荐阅读
- google-chrome-extension - 在 Chrome 扩展中发出 AJAX POST 请求时的内容安全策略和 connect-src?
- apache-spark - 从pyspark中的数据框ArrayType列中获取前N个元素
- string - 将字符序列转换为字符串的最有效方法(Scala/JVM)
- python - python http服务器2路通信
- codeigniter - 组的 Codeigniter 自定义元描述
- spring-data-rest - Spring DB 实体:构造函数、equals 和 hashcode
- javascript - 通过迭代动态创建的表单行和输入进行减法
- redhat-datavirt - teiid有没有md5之类的hash函数?
- python - 比较两个数据框的列而不合并数据框
- c# - 如何在.net的数据表列中放置空格和特殊字符