Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

132
Visualizações
Modificar cadena JSON

Di si tengo un objeto:

{ "name": "abc", "profession": null, "createdOn": "2022-01-05 10:00:05" } ,

cuando lo convierto en una cadena, necesito un resultado como:

'{"name">"abc", "profession">nil, "createdOn">"2022-01-05 10:00:05" }

Si reemplazo globalmente como:

JSON.stringify(inputObject).replace(/null/g, 'nil').replace(/:/g, '>') ,

voy a conseguir:

{"name">"abc", "profession">nil, "createdOn">"2022-01-05 10>00>05" }

Hay un par de problemas aquí:

  1. Reemplaza todas las instancias de : mientras que necesito reemplazar las que están delante de los nombres de las claves solamente (como clave : valor)
  2. Aunque el reemplazo de null a nil está funcionando, si profession fuera "profession": "null blah" , sería "profession">"nil blah" . No quiero modificar si el valor no es null .

¿Hay una mejor manera de manejar los escenarios anteriores?

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

function format(inputObject) { if (inputObject) { if (typeof inputObject === "object" && !Array.isArray(inputObject)) { const objectEntries = Object.entries(inputObject); if (objectEntries.length) { const reformatted = objectEntries .map(([key, value]) => `"${key}">${!value ? 'nil' : "\"" + value + "\""}`) .join(",") || ""; return `{${reformatted}}`; } return "{}"; } } return `${inputObject}`; }

Ilustración

 const obj = { "name": "abc", "profession": null, "createdOn": "2022-01-05 10:00:05" }; function format(inputObject) { if (inputObject) { if (typeof inputObject === "object" && !Array.isArray(inputObject)) { const objectEntries = Object.entries(inputObject); if (objectEntries.length) { const reformatted = objectEntries .map(([key, value]) => `"${key}">${!value ? 'nil' : "\"" + value + "\""}`) .join(",") || ""; return `{${reformatted}}`; } return "{}"; } } return `${inputObject}`; } console.log(format(obj));


WYSIWYG => WHAT YOU SHOW IS WHAT YOU GET

about 4 years ago · Juan Pablo Isaza Relatório

0

La solución sencilla puede ser:

 const a = { name: 'abc', gender: 'null', gender2: 'my null value', profession: null, createdOn: '2022-01-05 10:00:05', }; const b = JSON.stringify(a) .replace(/":/g, '">') .replace(/">null/g, '">nil') ; console.log(b);

Producción:

 {"name">"abc","gender">"null","gender2">"my null value","profession>nil,"createdOn ">"2022-01-05 10:00:05"}
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda