Use: Kør og forstå
Lav inputs: inpVægt (kg) og inpHøjde (cm), knap btnBMI og label lblBMI.
// BMI = vægt (kg) / (højde i m)^2
onEvent("btnBMI", "click", function() {
var vægt = getNumber("inpVægt");
var højdeMeter = getNumber("inpHøjde") / 100;
var bmi = vægt / (højdeMeter * højdeMeter);
setText("lblBMI", "BMI: " + bmi.toFixed(1));
});
Modify 1: Kategori
function kategori(bmi) {
if (bmi < 18.5) return "Undervægt";
if (bmi < 25) return "Normalvægt";
if (bmi < 30) return "Overvægt";
return "Svær overvægt";
}
onEvent("btnBMI", "click", function() {
var vægt = getNumber("inpVægt");
var h = getNumber("inpHøjde") / 100;
var bmi = vægt / (h*h);
setText("lblBMI", "BMI: " + bmi.toFixed(1) + " (" + kategori(bmi) + ")");
});
Modify 2: Input‑validering
function gyldigtTal(x) { return !isNaN(x) && x > 0; }
onEvent("btnBMI", "click", function() {
var v = getNumber("inpVægt");
var h = getNumber("inpHøjde");
if (!gyldigtTal(v) || !gyldigtTal(h)) {
setText("lblBMI", "Ugyldigt input – prøv igen.");
return;
}
h = h/100; var bmi = v/(h*h);
setText("lblBMI", "BMI: " + bmi.toFixed(1));
});