So erstellt man einen einfachen online-rechner in javascript
Online-Rechner gehören zu den einfachsten, nützlichsten und am häufigsten verwendeten interaktiven Elementen im modernen Web. Man findet sie auf Finanzseiten, Gesundheitsportalen, Technikblogs, Lernplattformen, E-Commerce-Websites und spezialisierten Tool-Seiten. Ein Kreditrechner, ein BMI-Rechner, ein Funktechnik-Rechner, ein Prozentrechner, ein Einheitenumrechner oder ein physikalisches Berechnungstool sehen auf den ersten Blick unterschiedlich aus, folgen technisch aber meist demselben Prinzip.
Der Nutzer gibt einen oder mehrere Werte ein. Der Browser liest diese Werte aus. JavaScript wendet eine Formel an. Anschließend wird das Ergebnis direkt auf der Seite angezeigt.
Dieses einfache Muster ist eine der besten Möglichkeiten, um zu verstehen, wie JavaScript eine statische Webseite in ein interaktives Web-Tool verwandeln kann. Für einen einfachen Rechner benötigt man kein komplexes Framework, keine Datenbank und keinen Backend-Server. In vielen Fällen reichen HTML, CSS und JavaScript vollständig aus.
In diesem Tutorial erstellen wir einen einfachen Online-Rechner in JavaScript. Als Beispiel verwenden wir die Formel für den Body-Mass-Index, kurz BMI. Der BMI ist keine perfekte medizinische Kennzahl, eignet sich aber sehr gut für ein Programmierbeispiel, weil die Formel kurz ist, die Eingaben leicht verständlich sind und das Ergebnis direkt im Browser berechnet werden kann.
Am Ende dieses Leitfadens ist klar, wie Eingabefelder erstellt, Werte aus der Webseite ausgelesen, Benutzereingaben geprüft, mathematische Berechnungen durchgeführt und Ergebnisse benutzerfreundlich angezeigt werden.
Warum online-rechner nützliche web-tools sind
Online-Rechner sind beliebt, weil sie ein sehr direktes Problem lösen. Statt eine Formel zu lesen und anschließend selbst zu rechnen, kann der Besucher Werte eingeben und sofort ein Ergebnis erhalten. Das macht Rechner sowohl für Nutzer als auch für Website-Betreiber attraktiv.
Für einen Technikblog können Online-Rechner die Interaktion deutlich verbessern. Besucher bleiben oft länger auf Seiten, wenn sie dort etwas ausprobieren können. Ein gut gestalteter Rechner kann außerdem gezielten Suchmaschinen-Traffic bringen, weil viele Nutzer nach sehr konkreten Tools suchen. Typische Suchanfragen sind zum Beispiel „BMI Rechner“, „Kreditraten Rechner“, „Wellenlängen Rechner“, „Prozentuale Veränderung berechnen“ oder „dBm in Watt umrechnen“.
Aus Sicht der Webentwicklung sind Rechner hervorragende Anfängerprojekte. Sie vermitteln die wichtigsten Grundlagen interaktiver Webseiten, ohne den Einstieg unnötig kompliziert zu machen. Ein einfacher Rechner enthält fast alle Grundkonzepte kleiner JavaScript-Tools: Formularfelder, Variablen, Zahlenumwandlung, Validierung, Rechenoperationen, bedingte Logik und DOM-Manipulation.
Genau deshalb ist ein JavaScript-Rechner oft eines der ersten sinnvollen Praxisprojekte für Einsteiger. Das Projekt ist klein genug, um es vollständig zu verstehen, aber gleichzeitig nützlich genug, um wie ein echtes Web-Tool zu wirken.
Das grundprinzip jedes javascript-rechners
Fast jeder browserbasierte Rechner folgt derselben Grundstruktur. Zuerst benötigt die Seite Eingabefelder, in die der Nutzer Werte eintragen kann. Diese Felder werden mit HTML erstellt. Danach wird die Berechnung durch einen Button oder ein Eingabeereignis ausgelöst. JavaScript liest die Werte aus, wandelt sie in Zahlen um, wendet eine Formel an und schreibt das Ergebnis wieder in die Seite.
Der Ablauf sieht grundsätzlich so aus:
Der Nutzer gibt Daten ein. JavaScript liest die eingegebenen Werte aus. Das Skript prüft, ob die Werte gültig sind. Anschließend wird eine mathematische Formel angewendet. Zum Schluss erscheint das Ergebnis auf der Webseite.
Auch wenn dieses Prinzip einfach klingt, ist jeder Schritt wichtig. Wenn Eingaben nicht geprüft werden, kann der Rechner falsche oder verwirrende Ergebnisse liefern. Wenn das Ergebnis nicht klar angezeigt wird, versteht der Nutzer möglicherweise nicht, was berechnet wurde. Wenn das Formular auf Mobilgeräten schlecht bedienbar ist, verlassen Besucher die Seite schneller.
Ein guter Rechner ist daher nicht nur mathematisch korrekt. Er sollte auch gut lesbar, responsiv und einfach zu bedienen sein.
Die bmi-formel in diesem beispiel
Der Body-Mass-Index verwendet Körpergewicht und Körpergröße, um einen numerischen Wert zu berechnen. Die metrische Standardformel lautet:
BMI = Gewicht in Kilogramm / Körpergröße in Metern²
Wenn eine Person zum Beispiel 70 kg wiegt und 1,75 m groß ist, lautet die Berechnung:
BMI = 70 / 1,75²
Das ergibt ungefähr:
BMI ≈ 22,86
In einem Web-Rechner ist es meist benutzerfreundlicher, wenn der Nutzer die Körpergröße in Zentimetern eingibt, da diese Angabe in vielen Ländern vertrauter ist. Das Skript wandelt Zentimeter anschließend in Meter um, indem es den Wert durch 100 teilt.
Beispiel:
175 cm / 100 = 1,75 m
Nach dieser Umrechnung kann die BMI-Formel ganz normal angewendet werden.
Grundlegende html-struktur
Der HTML-Teil erstellt die sichtbare Struktur des Rechners. Wir benötigen zwei Eingabefelder: eines für das Gewicht und eines für die Körpergröße. Außerdem brauchen wir einen Button, der die Berechnung startet, sowie einen Bereich, in dem das Ergebnis angezeigt wird.
<div class="bmi-calculator">
<h2>BMI-Rechner</h2>
<label for="weight">Gewicht (kg):</label>
<input type="number" id="weight" placeholder="z. B. 70">
<label for="height">Körpergröße (cm):</label>
<input type="number" id="height" placeholder="z. B. 175">
<button onclick="calculateBMI()">BMI berechnen</button>
<p id="result"></p>
</div>
Diese HTML-Struktur ist sehr kurz, enthält aber bereits alles, was der Rechner benötigt. Besonders wichtig sind die id-Attribute. JavaScript verwendet diese IDs, um die Eingabefelder zu finden und die eingegebenen Werte auszulesen.
Das Attribut type="number" teilt dem Browser mit, dass in diesem Feld Zahlen eingegeben werden sollen. Auf Mobilgeräten wird dadurch häufig automatisch eine numerische Tastatur angezeigt, was die Bedienung verbessert.
Der Button verwendet das Attribut onclick, um die Funktion calculateBMI() aufzurufen. Wenn der Nutzer auf den Button klickt, wird die JavaScript-Funktion ausgeführt.
Einfaches css für ein saubereres layout
Der Rechner funktioniert auch ohne CSS, sieht dann aber sehr schlicht aus. Schon wenige CSS-Regeln reichen aus, um die Darstellung übersichtlicher und besser für eine Blogseite oder ein Tutorial geeignet zu machen.
<style>
.bmi-calculator {
max-width: 420px;
padding: 20px;
border: 1px solid #ddd;
border-radius: 12px;
font-family: Arial, sans-serif;
}
.bmi-calculator label {
display: block;
margin-top: 12px;
font-weight: bold;
}
.bmi-calculator input {
width: 100%;
padding: 10px;
margin-top: 6px;
box-sizing: border-box;
}
.bmi-calculator button {
margin-top: 16px;
padding: 10px 16px;
cursor: pointer;
}
#result {
margin-top: 16px;
font-weight: bold;
}
</style>
Dieses CSS hält das Layout kompakt und gut lesbar. Der Rechner erhält eine maximale Breite, die Eingabefelder füllen den verfügbaren Platz aus und das Ergebnis wird optisch vom Button getrennt. Für ein einfaches Tutorial genügt das völlig, die Gestaltung kann später aber problemlos erweitert werden.
Die javascript-logik
Die JavaScript-Funktion liest Gewicht und Körpergröße aus, prüft die Eingaben, berechnet den BMI und zeigt das Ergebnis an.
<script>
function calculateBMI() {
const weight = parseFloat(document.getElementById("weight").value);
const heightCm = parseFloat(document.getElementById("height").value);
const heightM = heightCm / 100;
if (!weight || !heightCm || weight <= 0 || heightCm <= 0) {
document.getElementById("result").innerText = "Bitte gültige positive Werte eingeben.";
return;
}
const bmi = weight / (heightM * heightM);
document.getElementById("result").innerText = "Dein BMI beträgt: " + bmi.toFixed(2);
}
</script>
Die Funktion beginnt damit, die Werte aus den Eingabefeldern zu lesen. Da Werte aus HTML-Eingabefeldern zunächst als Text behandelt werden, verwenden wir parseFloat(), um sie in Zahlen umzuwandeln. Das ist wichtig, weil mathematische Berechnungen mit numerischen Werten durchgeführt werden müssen.
Die Körpergröße wird in Zentimetern eingegeben. Deshalb teilt das Skript diesen Wert durch 100, um daraus Meter zu machen.
Die if-Abfrage prüft, ob die Werte gültig sind. Wenn ein Feld leer ist, der Wert null oder negativ ist oder keine sinnvolle Zahl eingegeben wurde, zeigt der Rechner eine Fehlermeldung an und beendet die Funktion mit return.
Sind die Werte gültig, wird die BMI-Formel angewendet. Das Ergebnis wird anschließend mit toFixed(2) auf zwei Dezimalstellen gerundet.
Vollständiges funktionierendes beispiel
Hier ist der vollständige Rechner in einem einzigen Codeblock. Diese Version kann als eigenständiges Beispiel verwendet oder für einen WordPress-HTML-Block, eine eigene Seite oder ein kleines JavaScript-Tutorial angepasst werden.
<div class="bmi-calculator">
<h2>BMI-Rechner</h2>
<label for="weight">Gewicht (kg):</label>
<input type="number" id="weight" placeholder="z. B. 70">
<label for="height">Körpergröße (cm):</label>
<input type="number" id="height" placeholder="z. B. 175">
<button onclick="calculateBMI()">BMI berechnen</button>
<p id="result"></p>
</div>
<style>
.bmi-calculator {
max-width: 420px;
padding: 20px;
border: 1px solid #ddd;
border-radius: 12px;
font-family: Arial, sans-serif;
}
.bmi-calculator label {
display: block;
margin-top: 12px;
font-weight: bold;
}
.bmi-calculator input {
width: 100%;
padding: 10px;
margin-top: 6px;
box-sizing: border-box;
}
.bmi-calculator button {
margin-top: 16px;
padding: 10px 16px;
cursor: pointer;
}
#result {
margin-top: 16px;
font-weight: bold;
}
</style>
<script>
function calculateBMI() {
const weight = parseFloat(document.getElementById("weight").value);
const heightCm = parseFloat(document.getElementById("height").value);
const heightM = heightCm / 100;
if (!weight || !heightCm || weight <= 0 || heightCm <= 0) {
document.getElementById("result").innerText = "Bitte gültige positive Werte eingeben.";
return;
}
const bmi = weight / (heightM * heightM);
document.getElementById("result").innerText = "Dein BMI beträgt: " + bmi.toFixed(2);
}
</script>
Das ist bereits ein funktionsfähiger Rechner. Trotzdem lässt er sich noch deutlich verbessern. Echte Web-Tools enthalten oft bessere Validierung, klarere Hinweise, Kategorien, Einheitenumrechnung und ein responsives Layout.
Bmi-kategorien ergänzen
Ein BMI-Wert ist nützlicher, wenn der Rechner das Ergebnis zusätzlich einordnet. Deshalb können wir einfache Kategorien ergänzen. Häufig verwendete BMI-Kategorien für Erwachsene sind Untergewicht, Normalgewicht, Übergewicht und Adipositas. Diese Kategorien sind allgemeine Referenzbereiche und ersetzen keine medizinische Diagnose.
Hier ist eine verbesserte JavaScript-Version:
<script>
function calculateBMI() {
const weight = parseFloat(document.getElementById("weight").value);
const heightCm = parseFloat(document.getElementById("height").value);
const heightM = heightCm / 100;
const resultBox = document.getElementById("result");
if (!weight || !heightCm || weight <= 0 || heightCm <= 0) {
resultBox.innerText = "Bitte gültige positive Werte eingeben.";
return;
}
const bmi = weight / (heightM * heightM);
let category = "";
if (bmi < 18.5) {
category = "Untergewicht";
} else if (bmi < 25) {
category = "Normalgewicht";
} else if (bmi < 30) {
category = "Übergewicht";
} else {
category = "Adipositas";
}
resultBox.innerText = "Dein BMI beträgt: " + bmi.toFixed(2) + " (" + category + ").";
}
</script>
Diese Version verwendet bedingte Logik, um den berechneten Wert einzuordnen. Die Blöcke if, else if und else ermöglichen es dem Skript, je nach Ergebnis eine andere Meldung auszugeben.
Dasselbe Prinzip lässt sich auf viele andere Rechner übertragen. Ein Kreditrechner könnte anzeigen, ob eine Monatsrate realistisch ist. Ein Funktechnik-Rechner könnte darauf hinweisen, ob ein Kabelverlust akzeptabel ist. Ein Prozentrechner könnte anzeigen, ob ein Wert gestiegen oder gefallen ist. Die Formel ändert sich, aber die Grundlogik bleibt gleich.
Eingabevalidierung verbessern
Validierung ist einer der wichtigsten Bestandteile jedes Online-Rechners. Ohne Validierung können Nutzer unmögliche Werte, leere Felder oder negative Zahlen eingeben. Das kann zu verwirrenden Ergebnissen oder JavaScript-Fehlern führen.
Bei einem BMI-Rechner sollten Gewicht und Körpergröße immer positive Zahlen sein. Außerdem kann es sinnvoll sein, unrealistisch niedrige oder hohe Werte abzufangen, wenn der Rechner für menschliche Körperdaten gedacht ist. Eine Körpergröße von 5 cm oder 500 cm ist sehr wahrscheinlich ein Eingabefehler.
Ein erweiterter Validierungsblock könnte so aussehen:
if (isNaN(weight) || isNaN(heightCm)) {
resultBox.innerText = "Bitte nur Zahlen eingeben.";
return;
}
if (weight <= 0 || heightCm <= 0) {
resultBox.innerText = "Die Werte müssen größer als null sein.";
return;
}
if (heightCm < 50 || heightCm > 250) {
resultBox.innerText = "Bitte eine realistische Körpergröße in Zentimetern eingeben.";
return;
}
if (weight < 10 || weight > 300) {
resultBox.innerText = "Bitte ein realistisches Gewicht in Kilogramm eingeben.";
return;
}
Diese Art der Validierung verbessert die Nutzererfahrung, weil sie genauer erklärt, was korrigiert werden muss. Statt einer allgemeinen Fehlermeldung erhält der Besucher eine konkrete Rückmeldung.
Den rechner mobilfreundlich machen
Viele Besucher verwenden Online-Rechner auf Mobilgeräten. Ein Rechner, der auf dem Desktop akzeptabel aussieht, kann auf einem schmalen Bildschirm schnell unübersichtlich werden, wenn die Eingabefelder zu klein sind oder zu viele Elemente nebeneinander stehen.
Es gibt mehrere einfache Möglichkeiten, die Bedienbarkeit auf Mobilgeräten zu verbessern. Eingabefelder sollten groß genug sein. Beschriftungen sollten direkt bei den zugehörigen Feldern stehen. Zu viele Felder in einer Zeile sollten vermieden werden. Für Zahlenfelder sollte type="number" verwendet werden. Der Button sollte groß genug sein, damit er bequem mit dem Finger angetippt werden kann.
Das CSS in diesem Tutorial verwendet bereits ein einspaltiges Layout. Das ist für Mobilgeräte ein guter Standard. Bei komplexeren Rechnern können CSS Grid oder Flexbox dabei helfen, Layouts zu erstellen, die sich automatisch an verschiedene Bildschirmgrößen anpassen.
Warum reines javascript für viele rechner ausreicht
Moderne Webentwicklung arbeitet häufig mit Frameworks wie React, Vue, Angular oder Svelte. Diese Werkzeuge sind leistungsfähig, aber nicht für jedes Projekt notwendig. Ein kleiner Rechner braucht kein Build-System, keinen Paketmanager und keine komplexe Komponentenarchitektur.
Reines JavaScript ist oft die beste Wahl, wenn ein leichtgewichtiges Tool erstellt werden soll, das in einen Blogartikel oder eine WordPress-Seite eingebettet werden kann. Es lädt schnell, lässt sich einfach bearbeiten und ist nicht von externen Bibliotheken abhängig.
Für Lerninhalte ist reines JavaScript außerdem besonders gut geeignet, weil die Logik direkt sichtbar bleibt. Einsteiger sehen genau, wie Eingabewerte gelesen, wie die Formel berechnet und wie das Ergebnis wieder in die Seite geschrieben wird.
So passt man den rechner an andere formeln an
Wenn das BMI-Beispiel verstanden ist, lassen sich mit derselben Struktur viele andere Online-Rechner erstellen. Meist müssen nur die Eingabefelder und die Formel angepasst werden.
Ein Prozentrechner könnte zwei Werte verwenden und daraus die prozentuale Veränderung berechnen. Ein Kreditrechner könnte Kreditsumme, Zinssatz und Laufzeit verwenden. Ein Wellenlängenrechner könnte mit Frequenz und Lichtgeschwindigkeit arbeiten. Ein Einheitenumrechner könnte Meter in Fuß, Kilogramm in Pfund oder Celsius in Fahrenheit umwandeln.
Das Entwicklungsmuster bleibt immer gleich: Eingaben definieren, Werte auslesen, Werte prüfen, Formel anwenden, Ergebnis anzeigen.
Damit eignen sich Rechner auch gut als langfristige Content-Strategie für technische Websites. Jede nützliche Formel kann zu einem interaktiven Tool werden, und jedes Tool kann durch einen erklärenden Artikel ergänzt werden.
Häufige fehler beim erstellen von javascript-rechnern
Ein häufiger Fehler besteht darin, zu vergessen, dass Eingabewerte standardmäßig Zeichenketten sind. Wenn ein Wert aus einem Eingabefeld gelesen und nicht in eine Zahl umgewandelt wird, behandelt JavaScript ihn unter Umständen als Text. Besonders beim Plus-Operator kann das zu unerwarteten Ergebnissen führen.
Ein weiterer häufiger Fehler ist fehlende Validierung leerer Felder. Wenn ein Nutzer auf den Button klickt, ohne Werte einzugeben, sollte der Rechner nicht NaN anzeigen. NaN bedeutet „Not a Number“ und ist für normale Besucher wenig hilfreich. Eine verständliche Fehlermeldung ist deutlich besser.
Wichtig ist auch, den Code bei einfachen Rechnern nicht unnötig zu verkomplizieren. Ein kleines Tool sollte lesbar bleiben. Klare Variablennamen, kurze Funktionen und direkte Logik machen den Code leichter wartbar.
Auch Barrierefreiheit sollte nicht vergessen werden. Labels sollten mit dem for-Attribut korrekt mit den Eingabefeldern verbunden sein. Der Text sollte gut lesbar sein. Buttons sollten eindeutig beschriftet werden. Ein Rechner sollte nicht nur für technisch versierte Besucher verständlich sein, sondern auch für Nutzer, die einfach nur schnell ein Ergebnis erhalten möchten.
Einen einfachen Online-Rechner in JavaScript zu erstellen, ist eine der praktischsten Möglichkeiten, Web-Interaktivität zu lernen. Das Projekt ist klein, vermittelt aber mehrere zentrale Konzepte: HTML-Formulare, numerische Eingaben, JavaScript-Funktionen, Validierung, mathematische Formeln und DOM-Aktualisierung.
Der in diesem Tutorial gezeigte BMI-Rechner ist nur ein Ausgangspunkt. Dieselbe Struktur kann für Finanztools, technische Formeln, Gesundheitsindikatoren, Einheitenumrechner, Funktechnik-Rechner und viele andere Web-Anwendungen verwendet werden.
Die in diesem Beitrag verwendeten Bilder stammen entweder aus KI-generierter Quelle oder von lizenzfreien Plattformen wie Pixabay oder Pexels.
Dieser Artikel kann Affiliate-Links enthalten...
Get the weekly RF & IT briefing
Radio guides, RF calculators, AI, Windows, Linux and satellite communication explainers. One useful email per week. No spam.




