// 1. Destructuring em objetos
// Crie um objeto com nome, idade e email. Use destructuring para extrair essas informações em variáveis separadas.
const pessoal = {
nome: "Vitor",
idade: 21,
email: "vitor@gmail.com",
};
const { nome, idade, email } = pessoal;
// 2. Destructuring em arrays
// Crie um array com 3 linguagens de programação. Use destructuring para criar variáveis ling1, ling2 e ling3.
const linguagens = ["JavaScript", "Python", "C++"];
const [ling1, ling2, ling3] = linguagens;
// 3. Rest operator em função
// Crie uma função que receba vários números como parâmetros usando o operador rest (...).
// Utilize um laço for para somar todos os valores recebidos e retorne o total.;
const recebeNumeros = (...numeros) => {
let somaNumeros = 0;
for (let numero of numeros) {
somaNumeros += numero;
}
return somaNumeros;
};
console.log(recebeNumeros(1, 2, 3, 4, 5));
// 4. Spread operator com arrays
// Crie dois arrays de frutas e combine-os usando o operador spread.
const frutas1 = ["maçã", "banana", "laranja"];
const frutas2 = ["uva", "abacaxi", "manga"];
const frutasCombo = [...frutas1, ...frutas2];
console.log(frutasCombo);
// 5. Spread operator com objetos
// Crie dois objetos: um com nome e outro com idade. Combine-os em um terceiro objeto usando spread.
const nomeProprio = {
nome: "Vitor",
};
const quantosAnos = {
idade: 21,
};
const dados = { ...nomeProprio, ...quantosAnos };
console.log(dados);
// 6. Função com parâmetro default
// Crie uma função que recebe um nome e imprime "Olá, [nome]". Se o nome não for passado, use "visitante" como valor padrão.
const saudacao = (nome = "visitante") => {
console.log(`Olá, ${nome}!`);
};
saudacao("Vitor");
saudacao();
// 7. Trabalhando com datas
// Crie uma variável com a data atual e exiba o dia, mês e ano formatados.
const dataAtual = new Date();
console.log(
dataAtual.toLocaleDateString("pt-BR", {
day: "2-digit",
month: "2-digit",
year: "numeric",
}),
);
// 8. Modularização com export/import
// Crie uma função simples chamada somar(a, b) e exporte-a como módulo (modo CommonJS ou ES Modules, dependendo do ambiente).
//CommonJS
function somar(a, b) {
return a + b;
}
module.exports = { somar };
//ES Modules
export function somar(a, b) {
return a + b;
}
// 9. Objeto com função construtora
// Crie uma função construtora chamada Livro que receba titulo e autor como parâmetros e os armazene em propriedades do objeto.
// Em seguida, crie dois objetos Livro usando essa função.
function Livro(titulo, autor) {
this.titulo = titulo;
this.autor = autor;
}
const livro1 = new Livro("Harry Potter", "J. K. Rowling");
const livro2 = new Livro("O Hobbit", "J. R. R. Tolkien");
console.log(livro1);
console.log(livro2);
// 10. Método no objeto
// Adicione à função construtora Livro uma função chamada descrever, que retorna uma frase com o título e o autor do livro, usando concatenação de strings.
function Livro(titulo, autor) {
this.titulo = titulo;
this.autor = autor;
this.descrever = () => "Título do livro: " + this.titulo + ", Autor do livro: " + this.autor;
}
const livro = new Livro("Harry Potter", "J. K. Rowling");
console.log(livro.descrever());