zurück weiter zum Glossar

 

Body-Mass-Index

Mit dem kleinen Programm auf dieser Seite kannst du deine Fitness in zweierlei Weise testen:
1. Wie gesund ist mein Gewicht.
2. Wie fit bin ich in Java-Script

Zunächst zum Gewicht:

Gib in die Textfelder die entsprechenden Daten ein und klicke dann auf "Hier klicken".
Für das Komma bei der Größe musst du allerdings einen Punkt setzen!

Größe in mGewicht in kgBMI
Hier klicken

Liegt dein BMI zwischen 18 und 25, so ist alles in Ordnung.
Liegt er unter 18, solltest du etwas für deine Muskulatur tun, dann bist du nämlich untergewichtig.
Liegt er über 25, bist du übergewichtig. Was du dann tun solltest, weißt du ohne meine Rat.

Diese beiden Grenzwerte sind natürlich nur sehr ungenau. wenn du wirklich wissen willst, ob du ein gesundes Gewicht für dein Alter hast, musst du einen Arzt fragen.

Nimm die Aussage über deine Gewichtsgesundheit also eher als Scherz denn als ernst zu nehmende Aussage!

So, nun zur Frage, wie's funktioniert.

Ich gebe dir hier zunächst wieder, was im <body> steht:

<table>
 <tr>
  <td>Größe in m</td>
  <td>Gewicht in kg</td>
  <td>BMI</td>
 </tr>
 <tr>
  <td>
  <input id="GR"></td>
  <td><input id="GW"></td>
  <td id="BMI" onClick="bmi()">Hier klicken</td>
 </tr>
</table>

Du siehst, ich habe eine Tabelle aufgebaut.
In der ersten Zeile stehen die Spalten-Namen:

In der zweiten Zeile habe ich in die ersten beiden Zellen ein <input>-Textfeld eingefügt.
Hier trägt der User seine Daten ein.
Die beide <input>-Textfelder bekommen jeweils ein eigene ID: GR und GW.

In die dritte Zelle habe ich dieses Mal nur Text gesetzt!

Hier bekommt die Zelle!, also <td>, die ID BMI.

Nun zur Funktion im <head>.

Hier der Code (Denk an die Umklammerung mit <script language="JavaScript"></script>!):

function bmi () {
  var Gr = document.getElementById("GR").value;
  var Gw = document.getElementById("GW").value;
  document.getElementById("BMI").firstChild.nodeValue = Math.round(Gw / (Gr * Gr));
}

Erklärung:

Die Funktion heißt function bmi(){}

Ich hole mir über
  var Gr = document.getElementById("GR").value; und
  var Gw = document.getElementById("GW").value;
die vom User eingegebenen Werte für die Größe und das Gewicht.
Dann setzte ich mit
  document.getElementById("BMI").firstChild.nodeValue = Math.round(Gw / (Gr * Gr));
den errechneten BMI anstelle des Textes "Hier klicken" ein.
Das ist alles!

Ich glaube, die letzte Zeile der Funktion muss ich erklären, vor allem die Rechenformel.

Zunächst also die Formel:

Math.round(Gw/(Gr*Gr))

Den BMI = Body-Mass-Index errechnet man so:
Gewicht geteilt durch Größe zum Quadrat.
Ich setze in der Formel zunächst das Quadrat der Körpergröße. Da Java-Script keinen Operator für Quadrat-Berechnungen kennt, setzte ich Größe mal Größe = Gr*Gr.

Ich setze diese Formel in Klammern, weil Java-Script auch keinen Bruchstrich kennt!
es soll aber ja zunächst eben das Quadrat der Größe gebildet werden, und dann erst das Gewicht durch diesen wert geteilt. Deshalb also die Klammern.
Nun teile ich Gewicht durch's Größenquadrat:
GW / (Gr * Gr)
Oft kommt ein Wert mit vielen Stellen hinterm Komma heraus. Diese Nach-Komma-Stellen will ich gar nicht haben!
Also setzte ich eine mathematische Funktion aus Java-Script ein: math.round()
Ich denke, der Name der Funktion spricht für sich. Und so kommt dann als Ergebnis imm eine schöne glatte Zahl heraus.

Nun noch schnell zum Befehl:
  document.getElementById("BMI").firstChild.nodeValue =

Kennst du eigentlich!

Ich greife über document.getElementById("BMI"). auf die Zelle mit der ID = BMI zu.
Dann füge ich mit firstChild.nodeValue = das Ergebnis der Rechnung in die Zelle ein.
Fertig!

Den Test sparen wir uns hier. Du bist nämlich am Ende Der Unterweisung Java-Script angekommen.

Herzlichen Glückwunsch!

 

zurück weiter zum Glossar