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

264
Visualizações
¿Cómo convertir un objeto JS kv a una versión mecanografiada?

Quiero convertir un objeto js en una versión mecanografiada (estamos refactorizando el código) :( Pero no entiendo cómo migrar un objeto JS JSON a un formato TS correcto. Por ejemplo, tenemos un objeto JS como este:

 JS Object: { "filter": { "price": { "$gte": 10, "$lte": 100 }, "symbol": "appl" }, "sort": { "createdAt": -1 } }

Entonces, es fácil en el código js que declaremos params = {} y podamos insertar params.filter[price] = .... .

Sin embargo, si queremos hacerlo en Typescript, el compilador se quejará de que necesitamos determinar el tipo, y es difícil porque, como puede ver, el "valor" puede ser una cadena, un int u otro objeto.

¿Tienes alguna idea al respecto? Súper gracias!!!!!

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

0

No es necesario crear un tipo/interfaz para analizar JSON:

 const json = `{ "filter": { "price": { "$gte": 10, "$lte": 100 }, "symbol": "appl" }, "sort": { "createdAt": -1 } }` const data = JSON.parse(json) console.log(data)

Si lo desea, también puede crear una interfaz y asignarle los datos analizados. Sin embargo, tenga en cuenta que esto no valida que los datos analizados coincidan con el tipo/interfaz (podría ser cualquier dato JSON arbitrario y se asignaría a la variable de resultado, pero TypeScript solo le permitiría acceder a los miembros que existen en la interfaz .

 interface Data { filter: { price: { $gte: number $lte: number } symbol: string } sort: { createdAt: number } } const json = `{ "filter": { "price": { "$gte": 10, "$lte": 100 }, "symbol": "appl" }, "sort": { "createdAt": -1 } }` const data: Data = JSON.parse(json) console.log(data) console.log(data.filter.symbol)
about 4 years ago · Juan Pablo Isaza Relatório

0

Si desea un tipo de objeto específico, intente usar VSCode Paste JSON as Code o este sitio web que generará una interface mecanografiada a partir de su objeto http://json2ts.com/ .

about 4 years ago · Juan Pablo Isaza Relatório

0

Puede usar las interfaces de TypeScript para hacerlo. Puede generar fácilmente TS usando sitios web o extensiones como https://app.quicktype.io/

TS

 export interface Pokedex { filter: Filter; sort: Sort; } export interface Filter { price: { [key: string]: number }; symbol: string; } export interface Sort { createdAt: number; }

JS

 { "filter": { "price": { "$gte": 10, "$lte": 100 }, "symbol": "appl" }, "sort": { "createdAt": -1 } }
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