Remover o primeiro caractere de string em JavaScript
Neste artigo você vai aprender a como remover o primeiro caractere de string em JavaScript, de uma maneira super simples!

Fala programador(a), beleza? Bora aprender mais a como trabalhar com strings e também sobre JavaScript!
Para remover um número x de caracteres, inclusive um, podemos utilizar o método substring de JS
Utilizamos ele na própria string, e precisamos informar como argumento quantos caracteres vamos remover
Veja o exemplo a seguir:
const nome = "Matheus" console.log(nome.substring(1)) // "atheus"
Aqui removemos a primeira letra da string, que era M
Agora basta você aplicar a sua string, que vai funcionar da mesma forma como no caso acima
Note que aumentando o número passado para substring, você vai remover mais caracteres! 🙂
Formação Claude Code
Domine Claude Code do absoluto zero até o avançado
- 120 aulas
- 4 projetos
- 9h 45min
Conclusão
Neste artigo você aprendeu a remover o primeiro caractere de string com JavaScript
Utilizamos o método substring, que faz exatamente isso
Precisamos apenas passar o número de caracteres que desejamos remover e pronto!
Confira nossos cursos gratuitos no Youtube, com vídeos todos os dias!
Se inscreva e ative o sininho para receber as notificações e aprender mais ainda sobre desenvolvimento web!
Veja também nosso catálogo de cursos na Udemy, todos com exercícios e projetos práticos, nas mais diversas tecnologias
O link acima contém um cupom de desconto para os cursos!
E o método slice? Faz a mesma coisa:
O substring resolve, mas quem programa em JS hoje quase sempre escreve com slice
A ideia é a mesma: tu informa a partir de qual posição a nova string começa
const nome = "Matheus"
console.log(nome.slice(1)) // "atheus"
Se você conhece o slice de array, é exatamente o mesmo raciocínio, só que aplicado em texto
Ou seja: os dois funcionam, escolhe o que for mais legível pro teu time 🙂
substring ou slice: qual a diferença de verdade?
Pra remover o primeiro caractere, os dois entregam o mesmo resultado
A diferença aparece quando tu passa número NEGATIVO
const nome = "Matheus"
console.log(nome.slice(-3)) // "eus"
console.log(nome.substring(-3)) // "Matheus"
O slice conta de trás pra frente
Já o substring trata qualquer negativo como zero, então ele simplesmente devolve a string inteira
Tome cuidado! É aqui que mora o bug silencioso: teu código não quebra, ele só devolve o texto sem cortar nada e tu demora pra perceber
A string original NÃO muda:
Esse é o erro clássico de quem tá começando
String em JavaScript é imutável, então nenhum desses métodos altera a variável original
Eles RETORNAM uma string nova
let nome = "Matheus"
nome.slice(1)
console.log(nome) // "Matheus", continua igual!
nome = nome.slice(1)
console.log(nome) // "atheus"
Ou seja: ou tu guarda o retorno em outra variável, ou tu reatribui
Já me ferrei uma vez por causa disso, ficei olhando pro console sem entender por que o corte não acontecia haha
E se eu quiser remover o último caractere?
Mesma família de método, só muda o argumento
const nome = "Matheus"
console.log(nome.slice(0, -1)) // "Matheu"
console.log(nome.slice(1, -1)) // "atheu"
O primeiro número diz onde começa, o segundo onde termina
Na segunda linha a gente tirou o primeiro E o último de uma vez só, legal né? 😀
Removendo o primeiro caractere só quando ele existe:
Na vida real quase nunca é ‘remove sempre’
Geralmente é ‘remove a barra da rota’, ‘remove o zero da esquerda’, ‘remove o arroba do usuário’
Aí vale conferir antes com startsWith:
const rota = "/produtos"
const limpa = rota.startsWith("/") ? rota.slice(1) : rota
console.log(limpa) // "produtos"
E quando pode ter VÁRIOS caracteres repetidos no começo, o replace com regex resolve de uma vez:
const codigo = "000123"
console.log(codigo.replace(/^0+/, "")) // "123"
O ^ diz ‘a partir do início da string’ e o + diz ‘um ou mais’
Bora ver na prática no teu projeto? 🙂
Perguntas frequentes:
Qual é a forma mais simples de remover o primeiro caractere de uma string em JavaScript?
Chamar slice(1) (ou substring(1)) na string: o método devolve uma nova string sem o caractere da posição inicial
Como remover os dois primeiros caracteres?
Mesma lógica, só aumenta o número: texto.slice(2) devolve o texto sem os dois primeiros
substring ou slice, qual usar?
Pra cortar o começo, tanto faz
Se tu precisa contar de trás pra frente com número negativo, usa slice, porque o substring ignora negativo
Por que a minha variável continua igual depois do slice?
Porque string é imutável em JS
O método retorna uma string nova, então tu precisa guardar o retorno: texto = texto.slice(1)
Dá pra remover o primeiro caractere de todos os itens de um array?
Dá sim, com map:
Leia também
Formações
Formação Vibe Coding
Do Prompt ao Produto: Crie Software Real com IA
- 474 aulas
- 20 projetos
- 39h 27min
Blog | Mais populares
As diferenças de var, let e const

Como redirecionar para outra página com JavaScript
Exercícios de lógica de programação JavaScript com gabarito
Quais são os melhores exercícios lógica de programação JavaScript? Colocar em prática os exercícios de lógica de programação em JavaScript é de extrema importância para […]
