在JavaScript中为对象的键添加引号和下划线

在JavaScript中为对象的键添加引号和下划线,javascript,object,key,Javascript,Object,Key,我有一个具有此形状的对象: { IGG: "1007301297", Date effet: "", Statut deontologique: "B", Version charte: "1", N charte: "0", Nom charte: "", Statut charte: "A", Date envoi charte: "", Date 1ere relance: "", Date 2eme relance: "", Date 3eme relance: "", Date de

我有一个具有此形状的对象:

{
IGG: "1007301297",
Date effet: "",
Statut deontologique: "B",
Version charte: "1",
N charte: "0",
Nom charte: "",
Statut charte: "A",
Date envoi charte: "",
Date 1ere relance: "",
Date 2eme relance: "",
Date 3eme relance: "",
Date de validation: "" 
}
但我想用下划线替换键中的所有空格,并最终添加如下引号:

{
"IGG": "1007301297",
"Date_effet": "",
"Statut_deontologique": "B",
"Version_charte": "1",
"N_charte": "0",
"Nom_charte": "",
"Statut_charte": "A",
"Date_envoi_charte": "",
"Date_1ere_relance": "",
"Date_2eme_relance": "",
"Date_3eme_relance": "",
"Date_de_validation": "" 
}
可能吗


说明:事实上,我使用npm包csv解析器将csv数据解析为JSON,并将JSON发送回客户端。JSON在后端路由中是有效的,但是当我在客户端获得它时,我会得到如上所述的对象,假设您得到可以解析的JSON数据。可以使用map方法创建具有如下新关键点的新对象

var abc={
“IGG”:“1007301297”,
“生效日期”:“,
“法定义务”:“B”,
“版本图表”:“1”,
“N图表”:“0”,
“名称图表”:“,
“地位图表”:“A”,
“环境图表日期”:“,
“重新关联的日期”:“,
“日期2时间关系”:“,
“日期3eme关系”:“,
“取消验证日期”:”
}
const keyValues=Object.keys(abc.map)(key=>{
const newKey=key.replace(/\s+/g,'.');
返回{[newKey]:abc[key]};
});
console.log(keyValues)

你可以这样做

您的对象无效,您甚至如何定义它?事实上,我使用npm包csv解析器将csv数据解析为JSON,并将JSON发送回客户端。JSON在后端路由中是有效的,但是当我在客户端获得它时,我会得到上面所述的对象
obj1 = { "Foo Bar": "Baz"};
obj2 = {};
Object.keys(obj).forEach((key) => {obj2[key.replace(' ', '_')] = obj[key]});