Neste artigo você vai aprender a converter fator de vencimento de boleto em data, utilizando JavaScript para exibir no formato dd/mm/aaaa
Fala programador(a), beleza? Bora aprender mais sobre conversão de datas e também boletos em JavaScript!
Para realizar esta funcionalidade vamos precisar pegar o começo da última parte do código do boleto, os quatro primeiros dígitos contém a data
Vamos utilizar manipulação de string para resgatar estes dígitos e depois criar uma data baseada em uma fórmula que dá a data
Veja um exemplo prático:
var codigoDeBarras = "52459.12136 21627.007186 37931.981056 7 80260000001400"; var vencimento = codigoDeBarras.slice(40, 44); //7026 é o que precisamos var date = new Date('10/07/1997'); date.setTime(date.getTime() + (vencimento * 24 * 60 * 60 * 1000)); // criando a data de vencimento console.log(("0" + (date.getDate())).slice(-2) + '/' + ("0" + (date.getMonth() + 1)).slice(-2) + '/' + date.getFullYear()); // exibição da data
Veja que em vencimento resgatamos os dígitos que representam a data de vencimento “codificada”
E transformamos ela para data legível em date.seTime, que é onde manipulamos nosso objeto Date para a data de vencimento do boleto
Por fim exibimos a data completa por meio dos getters de Date, caso o dia de vencimento seja até 9, adicionamos um 0 a esquerda, que é o padrão convencional
E desta forma conseguimos obter a data de vencimento através do código de barras de um boleto com JavaScript, para apresentar ao usuário no site/sistema
Obs: o horário de verão não está mais em vigor no país, porém caso um dia voltar a existir o código acima pode retornar o dia errado
Então você deve incluir nos seus testes um checagem para esta variável, assim se prevenindo de um eventual erro por causa do mesmo
Conclusão
Neste artigo aprendemos a como converter fator de vencimento de boleto em data
Transformando o número recebido do código de barras para o padrão de data dd/mm/aaaa, que é o utilizado no Brasil
Note que utilizamos manipulação de string para isso, resgatando exatamente os números que são necessários do boleto
E além disso o apoio do objeto Date de JavaScript foi fundamental para trabalhar com datas de forma simples
Confira também nosso catálogo de cursos gratuitos, com aulas semanais no YouTube
Faltou tratar vencimentos superiores a 21/02/2025 quando o fator é maior que 9999.