Logotipo do CataBits

CataBits

A máquina movida à bits

4 códigos JS rápidos

Por André Luferat em 29/12/2023.

Na programação, quando se precisa desenvolver uma solução, podem existir dezenas de caminhos possíveis, conforme os conhecimentos, pesquisas e experiências de quem desenvolve. Para colaborar com esse povo, aqui estão 4 funções bem simples em JavaScript que achei durante as futucações pela Internet. Elas estão em JavaScript front-end, mas podem ser portadas para outras linguagens, principalmente por conta dos comentários...

4 códigos JS rápidos

Data atual

Função que gera a data atual no formato ISO → YYYY-MM-DD HH:II:SS

Esse é o melhor formato para enviar datas para um banco de dados ou via JSON, por exemplo.

Este código está bem comentado e é bem didático. ?

function now() {

    // Obtém a data atual  
    let nowDate = new Date();

    // Ajusta o 'timezone'.
    nowDate = new Date(nowDate.getTime() - (nowDate.getTimezoneOffset() * 60 * 1000));

    // Formata a data para 'YYYY-MM-DD HH:II:SS'
    const outDate = nowDate.toISOString().split('.')[0].replace('T', ' ');

    // Retorna a data.
    return outDate;

}

Exemplo de uso:

console.log(now());

Exemplo de retorno:

2023-10-04 13:28:45

Converter data ISO para pt-BR

Esta função funciona, meio que de forma oposta à anterior. Ela converte uma data obtida no formato ISO, vinda, por exemplo, de um banco de dados, e devolve no formato pt-BR. Por exemplo "2024-03-12 14:40:18" será convertida para "12/03/2024 14:40".

// Retorna a data formatada em pt-BR
function ISOtoBrDate(ISOdate) {

    const parts = ISOdate.split(' ');
    const date = parts[0].split('-');
    return `${date[2]}/${date[1]}/${date[0]} às ${parts[1]}`;

}

Exemplo de uso:

ISOtoBrDate('2024-03-12 14:40:18');

Exemplo de retorno:

12/03/2024 às 14:40

Calculando a idade de uma data

Essa pequena função é uma das dezenas de formas de calcular quantos anos se passaram à partir de uma determinada data.

// O parâmetro "birth" deve ser uma data válida no formato ISO (Ex.: 2023-09-25).
function getAge(birth) {
    return ~~((Date.now() - +new Date(birth)) / (31557600000));
}

O script converte a data do parâmetro para timestamp, subtrai do timestamp atual e retorna o resultado convertido para anos.

Exemplo de uso:

getAge('2000-10-24');

Exemplo de retorno:

24

Remover Scripts e Tags de Strings

Uma função simples que remove espaços antes e depois, scripts JavaScript e tags HTML da string argumento. ùtil para sanitizar strings antes de injetá-las em JSON ou em um banco de dados.

Importante! Essa função só funciona em sites de Internet porque depende de recursos do navegador Web para funcionar, ou seja, ela não funciona em Scripts Node.js por exemplo.

function stripTags(htmlText) {
    let div = document.createElement('div');
    div.innerHTML = htmlText.trim().replace(/<script>.*<\/script>/, '');
    return div.textContent;
}

Exemplo de uso:

html = '<script>console.log(`erro`)</script><b>Teste de string</b>';
console.log(this.stripTags(html));

O resultado é:

Teste de string

Precisa de mais?

Todos esses trechinhos de código foram encontrados enquanto eu passeava pelos gists da comunidade. Para que não sabe:

"...Os gists fornecem uma forma simples de compartilhar os snippets de código com outras pessoas. Cada gist é um repositório Git, o que significa que ele pode ser bifurcado e clonado…"

Tem algum trecho de código útil para soluções rápidas e quer compartilhar? Usa seu gist ou manda pra mim.

Comentários