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

204
Visualizações
Javascript, tratando de obtener la fecha solo a tiempo parcial

Tengo un campo de fecha proveniente de SQL de la siguiente manera:

2022-06-30T00:00:00.000Z

Estoy tratando de obtener los primeros 10 caracteres (fecha en formato aaaa-mm-dd), pero no puedo hacerlo funcionar.

Primero, probé una función "izquierda"

 textPaidThru= pt.slice(0,10)

y tengo

mié 29 de junio

Entonces probé momento

 let textPaidThru = moment(paidThru).format('YYYY-MM-DD');

Pero estoy recibiendo esto:

2022-06-29

No importa qué método intente usar, siempre obtengo la fecha proporcionada menos un día.

Encuentro que trabajar con fechas es muy difícil en JS. ¿Hay alguna manera de obtener la parte de la fecha solo como lo proporciona SQL? Este es el valor que estoy esperando:

2022-06-30

Gracias.

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

0

TL;RD; Zonas horarias

Respuesta real

Podrías usar un javascript de vainilla y analizarlo así:

Tenga en cuenta que el mes tiene un índice cero en Fecha, por lo que deberá agregar 1 a cada uno:

 const dateToParse = "2022-06-30T00:00:00.000Z" let parsedDate = new Date(dateToParse) const formattedDate = `${parsedDate.getFullYear()}-${parsedDate.getMonth()+1}-${parsedDate.getDate()}` console.log(formattedDate)

La razón por la que obtiene 6-29 probablemente se deba a que no vive en UTC + 0. También obtengo 6-29, pero eso es porque vivo en UTC-7.

Si observa el código a continuación, cambio la hora para que sea UTC-7 (que también debería funcionar para su zona horaria si lo que dice su perfil es UTC-3 correcto) y el registro de la consola para mí ahora muestra 6-30.

 const dateToParse = "2022-06-30T07:00:00.000Z" let parsedDate = new Date(dateToParse) const formattedDate = `${parsedDate.getFullYear()}-${parsedDate.getMonth()+1}-${parsedDate.getDate()}` console.log(formattedDate)

about 4 years ago · Juan Pablo Isaza Relatório

0

Si sabe que siempre obtendrá el mismo formato (bueno, probablemente lo hará), puede usar split , algo así como.

 let dateTime = '2022-03-25T02:03:04.000Z'; let onlyDate = date.split('T')[0];

Esto dividirá la cadena en T y básicamente solo quieres la primera parte (índice de matriz 0) y eso es todo.

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