Добавьте кавычки и подчеркивания к ключам объекта в JavaScript - PullRequest
0 голосов
/ 27 февраля 2020

У меня есть объект с этой формой:

{
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": "" 
}

Это возможно?

Объяснение: Фактически я анализирую данные csv в JSON с помощью npm пакета csv-parser и отправляю JSON обратно клиенту. JSON действителен в бэкэнд-маршруте, но когда я получаю его на стороне клиента, я получаю объект, как указано выше

Ответы [ 2 ]

0 голосов
/ 27 февраля 2020
obj1 = { "Foo Bar": "Baz"};
obj2 = {};
Object.keys(obj).forEach((key) => {obj2[key.replace(' ', '_')] = obj[key]});

Вы можете сделать что-то подобное!

0 голосов
/ 27 февраля 2020

Предполагая, что вы получите json данные, которые вы можете проанализировать. Вы можете использовать метод карты для создания новых объектов, имеющих новые ключи, такие как

var abc = {
  "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": "" 
}

const keyValues = Object.keys(abc).map(key => {
    const newKey = key.replace(/\s+/g, '_');
    return { [newKey]: abc[key] };
  });
  
console.log(keyValues)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...