Revisão de Variáveis e Tipos de Dados em JavaScript

Trabalhando com HTML, CSS e JavaScript

Enquanto HTML e CSS fornecem a estrutura do site, JavaScript traz interatividade para os sites ao permitir funcionalidades complexas, como manipular a entrada do usuário, animar elementos e até construir aplicações web completas.

Tipos de Dados em JavaScript

Tipos de dados ajudam o programa a entender o tipo de dado com o qual está trabalhando, seja um número, texto ou outra coisa.
  • Number: Um número representa tanto valores inteiros quanto de ponto flutuante. Exemplos de inteiros incluem 7, 19 e 90.
  • Ponto flutuante: Um número de ponto flutuante é um número com um ponto decimal. Exemplos incluem 3.14, 0.5 e 0.0001.
  • String: Uma string é uma sequência de caracteres, ou texto, entre aspas. "I like coding" e 'JavaScript is fun' são exemplos de strings.
  • Booleano: Um booleano representa um dos dois valores possíveis: true ou false. Você pode usar um booleano para representar uma condição, como isLoggedIn = true.
  • Undefined e Null: Um valor undefined é uma variável que foi declarada mas não recebeu um valor. Um valor null é um valor vazio ou uma variável que foi intencionalmente atribuída com o valor null.
  • Objeto: Um objeto é uma coleção de pares chave-valor. A chave é o nome da propriedade e o valor é o valor da propriedade.
Aqui, o objeto pet tem três propriedades ou chaves: name, age e type. Os valores são Fluffy, 3 e dog, respectivamente.
let pet = {
  name: "Fluffy",
  age: 3,
  type: "dog"
};
  • Symbol: O tipo de dado Symbol é um valor único e imutável que pode ser usado como identificador para propriedades de objetos.
No exemplo abaixo, dois símbolos são criados com a mesma descrição, mas eles não são iguais.
const crypticKey1= Symbol("saltNpepper");
const crypticKey2= Symbol("saltNpepper");
console.log(crypticKey1 === crypticKey2); // false
  • BigInt: Quando o número é muito grande para o tipo de dado Number, você pode usar o tipo de dado BigInt para representar inteiros de comprimento arbitrário.
Ao adicionar um n ao final do número, você pode criar um BigInt.
const veryBigNumber = 1234567890123456789012345678901234567890n;

Variáveis em JavaScript

  • Variáveis podem ser declaradas usando a palavra-chave let.
let cityName;
  • Para atribuir um valor a uma variável, você pode usar o operador de atribuição =.
cityName = "New York";
  • Variáveis declaradas usando let podem ser reatribuídas com um novo valor.
let cityName = "New York";
cityName = "Los Angeles";
console.log(cityName); // Los Angeles
  • Além de let, você também pode usar const para declarar uma variável. No entanto, uma variável const não pode ser reatribuída a um novo valor.
const cityName = "New York";
cityName = "Los Angeles"; // TypeError: Assignment to constant variable.
  • Variáveis declaradas usando const são usadas para declarar constantes, que não podem ser alteradas ao longo do código, como PI ou MAX_SIZE.

Convenções de Nomenclatura de Variáveis

  • Nomes de variáveis devem ser descritivos e significativos.
  • Nomes de variáveis devem ser camelCase como cityName, isLoggedIn e veryBigNumber.
  • Nomes de variáveis não devem começar com um número. Eles devem começar com uma letra, _ ou $.
  • Nomes de variáveis não devem conter espaços ou caracteres especiais, exceto _ e $.
  • Nomes de variáveis não devem ser palavras-chave reservadas.
  • Nomes de variáveis são sensíveis a maiúsculas e minúsculas. age e Age são variáveis diferentes.

Strings e imutabilidade de String em JavaScript

  • Strings são sequências de caracteres entre aspas. Elas podem ser criadas usando aspas simples e aspas duplas.
let correctWay = 'This is a string';
let alsoCorrect = "This is also a string";
  • Strings são imutáveis em JavaScript. Isso significa que, uma vez que uma string é criada, você não pode alterar os caracteres na string. No entanto, você ainda pode reatribuir strings a um novo valor.
let firstName = "John";
firstName = "Jane"; // Reassigning the string to a new value

Concatenação de Strings em JavaScript

  • Concatenação é o processo de juntar múltiplas strings ou combinar strings com variáveis que contêm texto. O operador + é um dos métodos mais simples e frequentemente usados para concatenar strings.
let studentName = "Asad";
let studentAge = 25;
let studentInfo = studentName + " is " + studentAge + " years old.";
console.log(studentInfo); // Asad is 25 years old.
  • Se você precisar adicionar ou anexar a uma string existente, então você pode usar o operador +=. Isso é útil quando você quer construir uma string adicionando mais texto a ela ao longo do tempo.
let message = "Welcome to programming, ";
message += "Asad!";
console.log(message); // Welcome to programming, Asad!
  • Outra forma de concatenar strings é usar o método concat(). Este método junta duas ou mais strings.
let firstName = "John";
let lastName = "Doe";
let fullName = firstName.concat(" ", lastName);
console.log(fullName); // John Doe

Registrando Mensagens com console.log()

  • O método console.log() é usado para registrar mensagens no console. É uma ferramenta útil para depuração e teste do seu código.
console.log("Hello, World!");
// Output: Hello, World!

Ponto e vírgula em JavaScript

  • Ponto e vírgula são usados principalmente para marcar o fim de uma instrução. Isso ajuda o motor JavaScript a entender a separação das instruções individuais, o que é crucial para a execução correta.
let message = "Hello, World!"; // first statement ends here
let number = 42; // second statement starts here
  • Os pontos e vírgulas ajudam a prevenir ambiguidades na execução do código e garantem que as instruções sejam corretamente finalizadas.

Comentários em JavaScript

  • Qualquer linha de código que esteja comentada é ignorada pelo motor JavaScript. Comentários são usados para explicar o código, fazer anotações ou desabilitar temporariamente o código.
  • Comentários de linha única são criados usando //.
// This is a single-line comment and will be ignored by the JavaScript engine
  • Comentários multilinha são criados usando /* para iniciar o comentário e */ para finalizar o comentário.
/*
This is a multi-line comment.
It can span multiple lines.
*/

JavaScript como uma Linguagem de Tipagem Dinâmica

  • JavaScript é uma linguagem de tipagem dinâmica, o que significa que você não precisa especificar o tipo de dado de uma variável quando a declara. O motor do JavaScript determina automaticamente o tipo de dado com base no valor atribuído à variável.
let error = 404; // JavaScript treats error as a number
error = "Not Found"; // JavaScript now treats error as a string
  • Outras linguagens, como C#, que não são tipadas dinamicamente resultariam em um erro:
int error = 404; // value must always be an integer
error = "Not Found"; // This would cause an error in C#

Usando o operador typeof

  • O operador typeof é usado para verificar o tipo de dado de uma variável. Ele retorna uma string indicando o tipo da variável.
let age = 25;
console.log(typeof age); // "number"

let isLoggedIn = true;
console.log(typeof isLoggedIn); // "boolean"
  • No entanto, há uma peculiaridade bem conhecida em JavaScript quando se trata de null. O operador typeof retorna "object" para valores null.
let user = null;
console.log(typeof user); // "object"