🚀 Nuova versione beta disponibile! Feedback o problemi? Contattaci

Esercizi Classi Javascript

Codegrind Team•Jul 22 2023

Ecco degli esercizi semplici con soluzione per praticare le basi delle classi e programmazione ad oggetti in Javascript.

Esercizio 1

Creare una classe "Persona" con proprietĂ  nome e cognome.Aggiungere un metodo "saluta" che stampi un saluto con il nome e cognome.
class Persona {
  constructor(nome, cognome) {
    this.nome = nome;
    this.cognome = cognome;
  }

  saluta() {
    console.log(`Ciao, sono ${this.nome} ${this.cognome}`);
  }
}

const persona = new Persona("Mario", "Rossi");
persona.saluta();

Esercizio 2

Creare una classe "Automobile" con proprietĂ  marca e anno di produzione. Aggiungere un metodo "dettagli" alla classe "Automobile" che stampi i dettagli della vettura.
class Automobile {
  constructor(marca, anno) {
    this.marca = marca;
    this.anno = anno;
  }

  dettagli() {
    console.log(`Marca: ${this.marca}, Anno: ${this.anno}`);
  }
}

const automobile = new Automobile("Fiat", 2020);
automobile.dettagli();

Esercizio 3

Creare una classe "Cerchio" con proprietĂ  raggio e un metodo per calcolare l'area.
class Cerchio {
  constructor(raggio) {
    this.raggio = raggio;
  }

  calcolaArea() {
    return Math.PI * this.raggio * this.raggio;
  }
}

const cerchio = new Cerchio(5);
const area = cerchio.calcolaArea();
console.log("Area del cerchio:", area);

Esercizio 4

Creare una classe "Libro" con proprietĂ  titolo e autore. Aggiungere un metodo "dettagli" alla classe "Libro" che stampi i dettagli del libro.
class Libro {
  constructor(titolo, autore) {
    this.titolo = titolo;
    this.autore = autore;
  }

  dettagli() {
    console.log(`Titolo: ${this.titolo}, Autore: ${this.autore}`);
  }
}

const libro = new Libro("Il Signore degli Anelli", "J.R.R. Tolkien");
libro.dettagli();

Esercizio 5

Creare una classe "Studente" con proprietĂ  nome, cognome e un array di voti. Aggiungere un metodo "aggiungiVoto" alla classe "Studente" che permetta di aggiungere un voto all'array dei voti.
class Studente {
  constructor(nome, cognome) {
    this.nome = nome;
    this.cognome = cognome;
    this.voti = [];
  }

  aggiungiVoto(voto) {
    this.voti.push(voto);
  }
}

const studente = new Studente("Mario", "Rossi");
studente.aggiungiVoto(8);
studente.aggiungiVoto(7);
console.log("Voti:", studente.voti);

Esercizio 6

Creare una classe "Prodotto" con proprietĂ  nome, prezzo e un metodo per applicare uno sconto al prezzo.
class Prodotto {
  constructor(nome, prezzo) {
    this.nome = nome;
    this.prezzo = prezzo;
  }

  applicaSconto(scontoPercentuale) {
    const sconto = (this.prezzo * scontoPercentuale) / 100;
    this.prezzo -= sconto;
  }
}

const prodotto = new Prodotto("Televisore", 1000);
console.log("Prezzo originale:", prodotto.prezzo);
prodotto.applicaSconto(20);
console.log("Prezzo scontato:", prodotto.prezzo);

Esercizio 7

Creare una classe "Punto" con proprietĂ  x e y, e un metodo per calcolare la distanza dal punto all'origine.
class Punto {
  constructor(x, y) {
    this.x = x;
    this.y = y;
  }

  calcolaDistanza() {
    const distanza = Math.sqrt(this.x * this.x + this.y * this.y);
    return distanza;
  }
}

const punto = new Punto(3, 4);
const distanza = punto.calcolaDistanza();
console.log("Distanza dal punto all'origine:", distanza);

Esercizio 8

Creare una classe "Rettangolo" con proprietĂ  base e altezza, e un metodo per calcolare l'area.
class Rettangolo {
  constructor(base, altezza) {
    this.base = base;
    this.altezza = altezza;
  }

  calcolaArea() {
    const area = this.base * this.altezza;
    return area;
  }
}

const rettangolo = new Rettangolo(5, 3);
const area = rettangolo.calcolaArea();
console.log("Area del rettangolo:", area);

Esercizio 9

Creare una classe "Utente" con proprietĂ  nome, cognome e un metodo per generare l'indirizzo email.
class Utente {
  constructor(nome, cognome) {
    this.nome = nome;
    this.cognome = cognome;
  }

  generaEmail() {
    const email = `${this.nome.toLowerCase()}.${this.cognome.toLowerCase()}@example.com`;
    return email;
  }
}

const utente = new Utente("Mario", "Rossi");
const email = utente.generaEmail();
console.log("Indirizzo email:", email);

Esercizio 10

Creare una classe "Triangolo" con proprietĂ  base e altezza, e un metodo per calcolare l'area.
class Triangolo {
  constructor(base, altezza) {
    this.base = base;
    this.altezza = altezza;
  }

  calcolaArea() {
    const area = (this.base * this.altezza) / 2;
    return area;
  }
}

const triangolo = new Triangolo(6, 4);
const area = triangolo.calcolaArea();
console.log("Area del triangolo:", area);