Noções básicas sobre Strings
- Definição: Uma string é uma sequência de caracteres envolvida por aspas simples, aspas duplas ou backticks. Strings são tipos de dados primitivos e são imutáveis. Imutabilidade significa que, uma vez que uma string é criada, ela não pode ser alterada.
- Acessando Caracteres de uma String: Para acessar um caractere de uma string você pode usar a notação de colchetes e passar o número do índice. Um índice é a posição de um caractere dentro de uma string e é baseado em zero.
const developer = "Jessica";
console.log(developer[0]); // J
\n (Caractere de Nova Linha): Você pode criar uma nova linha em uma string usando o caractere de nova linha \n.
const poem = "Roses are red,\nViolets are blue,\nJavaScript is fun,\nAnd so are you.";
console.log(poem);
- Escapando Strings: Você pode escapar caracteres em uma string colocando barras invertidas (
\) na frente das aspas.
const statement = "She said, \"Hello!\"";
console.log(statement); // She said, "Hello!"
Literais de Template (Strings de Template) e Interpolação de Strings
- Definição: Template literals são definidos com backticks (`). Eles permitem uma manipulação de strings mais fácil, incluindo a incorporação de variáveis diretamente dentro de uma string, um recurso conhecido como interpolação de strings.
const name = "Jessica";
const greeting = Hello, ${name}!;
console.log(greeting); // "Hello, Jessica!"
ASCII, o método charCodeAt() e o método fromCharCode()
- ASCII: ASCII (American Standard Code for Information Interchange) é um padrão de codificação de caracteres usado para representar caracteres básicos do inglês usando valores numéricos. Lições anteriores apresentam
charCodeAt() e fromCharCode() usando exemplos de ASCII.
- Unicode: strings JavaScript usam Unicode internamente, especificamente codificação UTF-16. Para os primeiros 128 caracteres (letras latinas básicas, dígitos e símbolos comuns), os valores Unicode correspondem aos códigos ASCII. É por isso que exemplos baseados em ASCII continuam funcionando em JavaScript.
- O Método
charCodeAt(): Este método retorna a unidade de código UTF-16 do caractere em um índice especificado. Para caracteres latinos básicos, esse valor corresponde ao código ASCII.
const letter = "A";
console.log(letter.charCodeAt(0)); // 65
- O Método
fromCharCode(): Este método converte um código ASCII em seu caractere correspondente.
const char = String.fromCharCode(65);
console.log(char); // A
Outros Métodos Comuns de String
- O Método
indexOf: Este método é usado para buscar uma substring dentro de uma string. Se a substring for encontrada, indexOf retorna o índice (ou posição) da primeira ocorrência dessa substring. Se a substring não for encontrada, indexOf retorna -1, o que indica que a busca não teve sucesso.
const text = "The quick brown fox jumps over the lazy dog.";
console.log(text.indexOf("fox")); // 16
console.log(text.indexOf("cat")); // -1
- O Método
includes(): Este método é usado para verificar se uma string contém uma substring específica. Se a substring for encontrada dentro da string, o método retorna true. Caso contrário, retorna false.
const text = "The quick brown fox jumps over the lazy dog.";
console.log(text.includes("fox")); // true
console.log(text.includes("cat")); // false
- O Método
slice(): Este método extrai uma parte de uma string e retorna uma nova string, sem modificar a string original. Ele recebe dois parâmetros: o índice inicial e o índice final opcional.
const text = "G.E.A.R ACADEMY";
console.log(text.slice(0, 4)); // "free"
console.log(text.slice(4, 8)); // "Code"
console.log(text.slice(8, 12)); // "Camp"
- O Método
toUpperCase(): Este método converte todos os caracteres para letras maiúsculas e retorna uma nova string com todos os caracteres em maiúsculas.
const text = "Hello, world!";
console.log(text.toUpperCase()); // "HELLO, WORLD!"
- O Método
toLowerCase(): Este método converte todos os caracteres em uma string para letras minúsculas.
const text = "HELLO, WORLD!"
console.log(text.toLowerCase()); // "hello, world!"
- O Método
replace(): Este método permite que você encontre um valor especificado (como uma palavra ou caractere) em uma string e o substitua por outro valor. O método retorna uma nova string com a substituição e deixa a original inalterada porque as strings em JavaScript são imutáveis.
const text = "I like cats";
console.log(text.replace("cats", "dogs")); // "I like dogs"
- O Método
replaceAll(): Este método permite encontrar todas as ocorrências de um valor especificado (uma palavra, caractere ou padrão) em uma string e substituí-las por outro valor. Ele funciona como o replace(), mas em vez de parar após a primeira correspondência, atualiza todas as correspondências encontradas na string.
const text = "I love cats and cats are so much fun!";
console.log(text.replaceAll("cats", "dogs")); // "I love dogs and dogs are so much fun!"
- O Método
repeat(): Este método é usado para repetir uma string um número especificado de vezes.
const text = "Hello";
console.log(text.repeat(3)); // "HelloHelloHello"
- O Método
trim(): Este método é usado para remover espaços em branco tanto do início quanto do fim de uma string.
const text = " Hello, world! ";
console.log(text.trim()); // "Hello, world!"
- O Método
trimStart(): Este método remove espaços em branco do início (ou "start") da string.
const text = " Hello, world! ";
console.log(text.trimStart()); // "Hello, world! "
- O Método
trimEnd(): Este método remove espaços em branco do final da string.
const text = " Hello, world! ";
console.log(text.trimEnd()); // " Hello, world!"
- O Método
prompt(): Este método do window é usado para obter informações de um usuário por meio de uma caixa de diálogo. Este método recebe dois argumentos. O primeiro argumento é a mensagem que aparecerá dentro da caixa de diálogo, normalmente solicitando que o usuário insira informações. O segundo é um valor padrão que é opcional e preencherá o campo de entrada inicialmente.
const answer = window.prompt("What's your favorite animal?"); // This will change depending on what the user answers