Como criar mascaras em inputs em javascript?

Eu tenho alguns inputs dentro de um formulário, telefone, cpf e rg e eu queria criar máscaras para cada um deles porém não sei como o faz, e eu queria que as máscaras fossem aplicadas assim que o usuário vaid digitando no input, como poderia fazer isto?

Há libs que fazem esse trabalho para vc, como por exemplo: https://imask.js.org

E não teria como fazer isso sem lib?

Tem sim, normalmente envolve criar listeners para eventos como keydown, focus ou input, em cada elemento que você quiser aplicar uma máscara, e você pode acabar tendo que implementar para cada tipo de máscara. Alguns exemplos:

Geralmente o pessoal recomenda bibliotecas porque elas já tratam a maioria dos casos mais comuns e são mais simples de usar, e o tratamento de eventos e a criação de máscaras tem detalhes que podem passar despercebidos se você não estiver atento (exemplo: copiar/colar pode quebrar muitas máscaras se não forem configuradas corretamente).

Abraço.

1 curtida

Obrigado amigo, já consegui fazer do cpf, falta fazer mas alguns.