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

199
Visualizações
Cómo convertir estos datos al formato dado

Estaba tratando de hacer que los datos que tengo conmigo tengan un formato mucho más legible y fácilmente comprensible. Pero estaba atascado con eso. ¿Es posible convertirlo a un formato legible?

Los datos que tengo están en el siguiente formato

 [ { "c": [ { "v": "Food Truck: The Vegan" }, { "v": "06/02/2022 16:00:00" }, { "v": "06/02/2022 21:00:00" }, { "v": "06/02/2022" } ] }, { "c": [ { "v": "Food Truck: Lob Dogs" }, { "v": "06/03/2022 16:00:00" }, { "v": "06/03/2022 21:00:00" }, { "v": "06/03/2022" } ] }}]

Quiero convertirlo a un formato mucho más legible como el ejemplo que se muestra a continuación.

 { "name": "Food Truck: The Vegan Table", "start_date": "06/02/2022 16:00:00", "end_date": "06/02/2022 21:00:00", "date": "06/02/2022" }, { "name": "Food Truck: Lob Dogs", "start_date": "06/03/2022 16:00:", "end_date": "06/03/2022 21:00:00", "date": "06/03/2022" } ] How should I do this in javascript?
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Puede usar Object.fromEntries con una matriz de keys separada para mapear su matriz y reformatear cada matriz anidada.

 const input = [{ "c": [{ "v": "Food Truck: The Vegan" }, { "v": "06/02/2022 16:00:00" }, { "v": "06/02/2022 21:00:00" }, { "v": "06/02/2022" }] }, { "c": [{ "v": "Food Truck: Lob Dogs" }, { "v": "06/03/2022 16:00:00" }, { "v": "06/03/2022 21:00:00" }, { "v": "06/03/2022" }] }] const keys = ['name', 'start_date', 'end_date', 'date']; const result = input.map(({ c }) => Object.fromEntries( keys.map((key, i) => [key, c[i].v]) )); console.log(result)

O usando un poco de desestructuración de largo aliento. (posiblemente el más descriptivo...)

 const input = [{ "c": [{ "v": "Food Truck: The Vegan" }, { "v": "06/02/2022 16:00:00" }, { "v": "06/02/2022 21:00:00" }, { "v": "06/02/2022" }] }, { "c": [{ "v": "Food Truck: Lob Dogs" }, { "v": "06/03/2022 16:00:00" }, { "v": "06/03/2022 21:00:00" }, { "v": "06/03/2022" }] }] const result = input.map(( { c: [ { v: name }, { v: start_date }, { v: end_date }, { v: date } ] } ) => ( { name, start_date, end_date, date } )); console.log(result)

about 4 years ago · Juan Pablo Isaza Relatório

0

Solo necesita iterar sobre los datos sin procesar y reestructurarlos de la manera que desee. Dado que no existen claves adecuadas para los datos sin procesar, si el orden o el índice es siempre el mismo, puede hacerlo de la siguiente manera.

 var data = [{ "c": [{ "v": "Food Truck: The Vegan" }, { "v": "06/02/2022 16:00:00" }, { "v": "06/02/2022 21:00:00" }, { "v": "06/02/2022" } ] }, { "c": [{ "v": "Food Truck: Lob Dogs" }, { "v": "06/03/2022 16:00:00" }, { "v": "06/03/2022 21:00:00" }, { "v": "06/03/2022" } ] } ]; function processData(_raw) { var processed = []; _raw.forEach(_item => { processed.push({ "name": _item.c[0].v, "start_date": _item.c[1].v, "end_date": _item.c[2].v, "date": _item.c[3].v }); }); return processed; } console.log(processData(data));

about 4 years ago · Juan Pablo Isaza Relatório

0

Use un método de reduce ( format en el fragmento) para map los elementos de su matriz:

 const keys = `name,start_date,end_date,date`.split(`,`); const format = (acc, obj, i) => ( {...acc, [keys[i]]: obj.v} ); const dataFormatted = getData().map( v => vcreduce(format, {}) ); console.log(dataFormatted); function getData() { return [ { "c": [ { "v": "Food Truck: The Vegan" }, { "v": "06/02/2022 16:00:00" }, { "v": "06/02/2022 21:00:00" }, { "v": "06/02/2022" } ] }, { "c": [ { "v": "Food Truck: Lob Dogs" }, { "v": "06/03/2022 16:00:00" }, { "v": "06/03/2022 21:00:00" }, { "v": "06/03/2022" } ] } ]; }
 .as-console-wrapper { max-height: 100% !important; }

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