Manipular strings sem conhecer os métodos apropriados pode transformar o trabalho de qualquer desenvolvedor em um verdadeiro pesadelo.
Para evitar essas dores de cabeça, é fundamental familiarizar-se com as propriedades e os métodos mais importantes para trabalhar com strings em JavaScript.
Vamos analisar cada um deles detalhadamente.
Comprimento
A propriedade `length` fornece o número total de caracteres de uma string.
const empresa = "etechpt.com"; console.log(empresa.length);
`toUpperCase()`
O método `toUpperCase()` converte todos os caracteres de uma string para letras maiúsculas e retorna a nova string. A string original permanece inalterada.
const empresa = "etechpt.com"; const empresaEmMaiusculas = empresa.toUpperCase(); console.log(empresaEmMaiusculas);
`toLowerCase()`
O método `toLowerCase()` transforma todos os caracteres de uma string em letras minúsculas, retornando a nova string resultante. A string original não sofre modificações.
const empresa = "etechpt.com"; const empresaEmMinusculas = empresa.toLowerCase(); console.log(empresaEmMinusculas);
`trim()`
O método `trim()` elimina todos os espaços em branco (incluindo espaços, tabs e novas linhas) do início e do final da string. A string original não é modificada; um novo valor é retornado.
const empresa = " Geek Flare "; console.log(empresa); console.log(empresa.trim());
`charAt(índice)`
O método `charAt()` localiza e retorna o caractere que se encontra em uma posição específica (índice) dentro da string. Se o índice fornecido for inválido, o método retorna uma string vazia.
const empresa = "etechpt.com"; console.log(empresa.charAt(2)); console.log(empresa.charAt(10));
`charCodeAt(índice)`
O método `charCodeAt()` retorna o valor numérico do código Unicode do caractere na posição especificada dentro da string. Se o índice for inválido, o método retorna `NaN` (Not a Number).
const empresa = "etechpt.com"; console.log(empresa.charCodeAt(2)); console.log(empresa.charCodeAt(10));
`slice(startIndex, endIndex)`
O método `slice()` extrai e retorna uma parte da string, começando do índice `startIndex` até (mas não incluindo) o índice `endIndex`. Por exemplo, `string.slice(0, 6)` retornaria os caracteres do índice 0 até o índice 5.
const empresa = "etechpt.com"; console.log(empresa.slice(0, 4));
O método `slice()` também aceita um único argumento. Nesse caso, ele retorna a substring desde o índice especificado até o final da string.
const empresa = "etechpt.com"; console.log(empresa.slice(4));
O método `slice()` também aceita índices negativos. Nesse caso, a contagem começa do final da string. Vejamos um exemplo, pois esse conceito pode ser novo para muitos:
Considerando a string “etechpt.com”, os índices negativos são:
e = -9, t = -8, e = -7, c = -6, h = -5, p = -4, t = -3, . = -2, c = -1
Portanto, o código `string.slice(-9, -5)` retornaria “etec” no exemplo acima.
const empresa = "etechpt.com"; console.log(empresa.slice(-9, -5));
Já o código `string.slice(-5)` retornaria “pt.com”.
const empresa = "etechpt.com"; console.log(empresa.slice(-5));
Observação: o uso de índices negativos não funcionará no Internet Explorer 8 ou versões anteriores.
`substr(startIndex, comprimento)`
O método `substr()` é semelhante ao `slice()`, mas a principal diferença é que, em vez de um índice final, ele recebe o número de caracteres que devem ser extraídos da string original.
const empresa = "etechpt.com"; console.log(empresa.substr(4, 5));
Existe também o método `substring()`, que é parecido com o `slice()`. No entanto, `substring()` não aceita índices negativos. Experimente você mesmo.
`replace(substring, newSubstring)`
O método `replace()` substitui a primeira ocorrência de uma `substring` por uma `newSubstring` na string original.
const frase = "Visite o site Google";
console.log(frase.replace("Google", "etechpt.com"));
`indexOf(substring)`
O método `indexOf()` retorna o índice da primeira ocorrência de uma dada `substring` dentro da string. Caso a `substring` não seja encontrada, o método retorna `-1`.
const empresa = "etechpt.com";
console.log(empresa.indexOf("Flare"));
console.log(empresa.indexOf("o"));
O método `indexOf()` também pode receber um segundo argumento, que especifica o índice a partir do qual a busca pela `substring` deve começar.
const empresa = "etechpt.com";
console.log(empresa.indexOf("e"));
console.log(empresa.indexOf("e", 5));
Existe outro método chamado `lastIndexOf()`, similar ao `indexOf()`. A diferença é que `lastIndexOf()` busca a `substring` do final para o começo da string e retorna o índice de sua primeira ocorrência. Experimente com o código `empresa.lastIndexOf(‘e’)`.
`split(substring)`
O método `split()` divide a string em substrings, utilizando o delimitador especificado, e retorna as substrings como elementos de um array.
const frase = "Visite, o, site, etechpt.com";
console.log(frase.split(" "));
console.log(frase.split(", "));
Conclusão
Esta análise não esgota todos os métodos disponíveis para manipulação de strings. Explore a documentação para conhecer todos os outros métodos existentes. Alguns podem ser muito úteis para casos de uso específicos.
Pesquise e utilize os métodos que melhor se adequarem ao seu contexto, mesmo que não tenham sido mencionados aqui.
Boas práticas de programação! 🙂
Em seguida, você pode explorar algumas das estruturas de dados mais populares em JavaScript.