Strings

Você está construindo uma saudação para um usuário autenticado e tem seu nome em uma variável. Você precisa que a página diga "Bem-vindo de volta, Priya" sem digitar "Priya" manualmente, porque amanhã será Kwame, e no dia seguinte será alguém que você nunca ouviu falar. Texto que você pode construir, medir e reformular na hora é uma string, e este capítulo é sobre como trabalhar com elas.
Fazendo strings
Uma string é texto: qualquer sequência de caracteres envolvida em aspas. Você pode usar aspas simples ou duplas, e elas se comportam da mesma maneira, então escolha uma e seja consistente.
const firstName = "Priya";
const greeting = "Welcome back";A forma mais útil de construir uma string é um template literal, escrito com backticks em vez de aspas. Dentro de um template literal você pode colocar um valor no texto com ${...}, e JavaScript preenche o que quer que esse valor contenha:
const firstName = "Priya";
const message = `Welcome back, ${firstName}`;
console.log(message); // Welcome back, PriyaEsse ${firstName} é um slot. Quando a string é construída, o slot é substituído pelo valor de firstName. Use template literals sempre que estiver construindo texto a partir de pedaços.
${...} que são preenchidos com seus valores. Essa é a ferramenta que você usará mais. Juntando e medindo
Você pode juntar duas strings com o operador +. Isso é chamado de concatenação:
const firstName = "Kwame";
const greeting = "Hi " + firstName;
console.log(greeting); // Hi KwameRepare no espaço dentro de 'Hi '. Concatenação cola strings exatamente como escritas, então se você esquecer o espaço você fica com HiKwame. Um template literal geralmente fica melhor para o mesmo trabalho: `Hi ${firstName}`.
Toda string sabe seu próprio comprimento. Peça com .length:
const firstName = "Kwame";
console.log(firstName.length); // 5Você também pode ler um único caractere por sua posição, contando a partir de zero, usando colchetes:
const firstName = "Kwame";
console.log(firstName[0]); // KO primeiro caractere fica na posição 0, não 1. Essa contagem baseada em zero está em todo lugar em JavaScript, então vale a pena se acostumar agora.
+, mas lembre-se de incluir seus próprios espaços, ou Hi e um nome ficam juntos. Um template literal é geralmente mais limpo para a mesma coisa. Use .length para contar caracteres, e colchetes como name[0] para ler um por posição, contando a partir de zero. Métodos de string úteis
Strings vêm com métodos embutidos: ações que você executa em uma string escrevendo um ponto e o nome do método. Aqui estão aqueles que você usará mais.
Mude a capitalização com toUpperCase() e toLowerCase():
const firstName = "priya";
console.log(firstName.toUpperCase()); // PRIYAVerifique se uma peça de texto aparece dentro de outra com includes(), que responde com true ou false:
const message = "Welcome back";
console.log(message.includes("back")); // trueCorte parte de uma string com slice(), dando-lhe a posição inicial e onde parar. Limpe espaços à toa nas extremidades com trim(). E troque uma peça de texto por outra com replace():
const raw = " Hello ";
console.log(raw.trim()); // Hello
const message = "Hi Sam";
console.log(message.replace("Sam", "Yuki")); // Hi YukiExistem muitos mais métodos de string, e você não precisa memorizá-los. Aprenda esses cinco, e procure o resto quando um trabalho exigir.
toUpperCase(), includes() para uma verificação sim ou não, slice() para cortar uma parte, trim() para remover espaços à toa, e replace() para trocar texto. Existem muitos mais, então aprenda esses cinco e procure o resto quando precisar. Por onde as strings continuam
Strings são um dos blocos de construção principais de JavaScript, e agora você tem as peças que importam: fazê-las com aspas ou template literals, juntá-las e medi-las, e reformulá-las com métodos que sempre retornam algo novo. O mesmo padrão de ponto-e-método que você usou aqui aparece novamente em outros tipos, mais notavelmente quando você começa a trabalhar com listas em métodos de array.
Texto também raramente viaja sozinho. No momento em que você mostra uma contagem, um preço ou um total, você está misturando strings com números, e template literals é como você cose os dois juntos de forma limpa.

