Te lo mostro: variabili – la memoria del programma
Una variabile è una scatola etichettata dove un programma conserva un valore:
let clickCount = 0; // number
let name = "Jake"; // string (text)
let isWeekend = true; // true/false
letcrea una variabile che si può cambiare.const(lo conosci già) crea una variabile che non cambierà mai.
Puoi fare calcoli con le variabili e cambiarle:
clickCount = clickCount + 1; // increase by 1
clickCount++; // same thing, shorter
Te lo mostro: un contatore di clic
Combiniamo una variabile con il pulsante della lezione scorsa:
<button id="counter">Clicked: 0×</button>
const counter = document.getElementById("counter");
let count = 0;
counter.addEventListener("click", () => {
count++;
counter.textContent = "Clicked: " + count + "×";
});
Per la prima volta, la pagina ricorda qualcosa. Ogni clic aumenta il numero nella scatola e lo mostra.
Te lo mostro: condizioni – prendere decisioni
Una condizione dice: “Se questo è vero, fai A. Altrimenti, fai B.”
if (count >= 10) {
counter.textContent = "Ten clicks! You've got some serious stamina 🏆";
} else {
counter.textContent = "Clicked: " + count + "×";
}
if (condizione) { ... }– “se questo è vero…”else { ... }– “…altrimenti”- Confronti:
>maggiore di,<minore di,>=maggiore o uguale,===uguale a,!==diverso da.
Ora tocca a te 💪
Costruisci un contatore con una sorpresa: dopo un certo numero di clic, succede qualcosa in più.
🏫 Sito web della scuola – vota il cibo migliore in mensa
<h2>Vote for pizza day!</h2>
<button id="vote">Vote 🍕 (0 votes)</button>
<p id="result"></p>
const vote = document.getElementById("vote");
const result = document.getElementById("result");
let votes = 0;
vote.addEventListener("click", () => {
votes++;
vote.textContent = "Vote 🍕 (" + votes + " votes)";
if (votes >= 5) {
result.textContent = "Decided! Pizza day wins the election. 🏆";
}
});
🙋 Sito web personale – contatore di palleggi
<h2>How many times can I juggle the ball?</h2>
<button id="kick">Kick! (0)</button>
<p id="record"></p>
const kick = document.getElementById("kick");
const record = document.getElementById("record");
let kicks = 0;
kick.addEventListener("click", () => {
kicks++;
kick.textContent = "Kick! (" + kicks + ")";
if (kicks === 20) {
record.textContent = "20 kicks – new personal record! 🎉";
}
});
🌍 Diario di viaggio – contatore paesi visitati
<h2>Country counter</h2>
<button id="country">Add a country (0)</button>
<p id="rating"></p>
const country = document.getElementById("country");
const rating = document.getElementById("rating");
let countryCount = 0;
country.addEventListener("click", () => {
countryCount++;
country.textContent = "Add a country (" + countryCount + ")";
if (countryCount >= 10) {
rating.textContent = "Ten countries – you're a globetrotter! 🌍";
} else if (countryCount >= 5) {
rating.textContent = "Five countries – beginner traveler. 🎒";
}
});
Nota else if – così si concatenano più condizioni.
⚽ Sito web del club – tracciatore gol
<h2>Shooting practice</h2>
<button id="goal">GOAL! ⚽</button>
<p id="score">Score: 0</p>
const goal = document.getElementById("goal");
const score = document.getElementById("score");
let goals = 0;
goal.addEventListener("click", () => {
goals++;
if (goals >= 10) {
score.textContent = "Score: " + goals + " – hat trick and more! Player of the match 🏆";
} else {
score.textContent = "Score: " + goals;
}
});
Hai appena imparato programmazione vera. Variabili e condizioni non sono solo “roba web” – funzionano esattamente allo stesso modo in Python, nei giochi e nelle app. Chi conosce variabili e condizioni può parlare con qualsiasi linguaggio di programmazione al mondo.
Controlla da solo: Il contatore conta, e quando arriva al limite succede qualcosa in più. Prova a spiegare ad alta voce cosa fa il codice, riga per riga – se ci riesci, hai le basi.
Cosa porti via da questa lezione
- Una variabile è una scatola con un valore:
let(modificabile),const(fissa).count++la aumenta di 1. - Una condizione
if / else if / elseè come un programma prende decisioni. - I confronti usano
>,<,>=,===,!==.
© 2026 Ing. Martin Polak / AlgoRhino · Condizioni d'uso dei contenuti