Segue a minha solução para a lista de exercícios nº 3:
Ex 1:
const pessoa = {
nome: 'Juscelino Da Silva',
notas: [9, 8, 7.5, 10],
calcularMediaNotas: function() {
let soma = 0;
let cont = 0;
for (const element of this.notas) {
cont++;
soma = soma + element;
}
return soma/cont;
},
classificarDesempenho: function() {
media = this.calcularMediaNotas();
if(media >= 9){
return 'Desempenho excelente';
} else{
if(media >= 7.5 && media < 9){
return 'Bom desempenho';
} else{
if(media >= 6 && media < 7.5){
return 'Desempenho regular';
} else{
return 'Desempenho insuficiente';
}
}
}
}
}
console.log(`A média é: ${pessoa.calcularMediaNotas()}`);
console.log(`Desempenho: ${pessoa.classificarDesempenho()}`);
Ex 2:
const carro = {
marca: 'Toyota',
modelo: 'Toyota Xei 2.0 Flex 16v Aut.',
ano: 2015,
cor: 'Preto',
kilometragem: 104600,
combustivel: 'flex',
cambio: 'automático'
}
function infoObj(obj){
for (const chave in obj) {
console.log(`chave: ${chave}, valor: ${obj[chave]}`);
}
}
infoObj(carro);
Ex 3:
const carro = {
marca: 'Toyota',
modelo: 'Toyota Xei 2.0 Flex 16v Aut.',
ano: 2015,
cor: 'Preto',
ligado: false,
ligar: function(){
if(this.ligado == true){
return 'O carro não pode ser ligado novamente pois já está ligado.';
} else{
this.ligado = true;
return 'O carro está ligado.';
}
},
desligar: function(){
if(this.ligado == false){
return 'O carro não pode ser desligado novamente pois já está desligado.';
} else{
this.ligado = false;
return 'O carro está desligado.';
}
},
obterDetalhes: function(){
const detalhesCarro = `O carro da marca ${this.marca}, modelo ${this.modelo}, ano ${this.ano}, cor ${this.cor}, ${this.ligado ? 'está ligado' : 'está desligado'}.`;
return detalhesCarro;
}
}
console.log(carro.ligar());
console.log(carro.desligar());
console.log(carro.obterDetalhes());
Ex 4:
const carro = {
marca: 'Toyota',
modelo: 'Toyota Xei 2.0 Flex 16v Aut.',
ano: 2015,
cor: 'Preto',
ligado: false
}
Object.defineProperty(carro, 'placa', {
value: 'NEV-0590',
enumerable: false
});
console.log('Chaves enumeráveis:');
for (const chave in carro) {
console.log(`chave: ${chave}, valor: ${carro[chave]}`);
}
console.log('');
console.log(Object.keys(carro));
console.log('Placa(não enumerável): ', carro.placa);
Ex 5:
const carroNovo = {
marca: 'Pontiac',
modelo: 'Trans-AM 5.7 V8',
ano: 1991,
cor: 'Verde'
}
const carroComNovosDetalhes = {
...carroNovo,
RENAVAM: '10863194637',
Placa: 'NEV-0590'
}
console.log(carroComNovosDetalhes);