Javascript Math–Konstanten & Methoden: Sinus, Logarithmus, PI

Javascript Math: Aufrunden, Abrunden, Wurzel, Sinus, Min und Max

Javascript Math liefert die Methoden für das Auf- und Abrunden von Zahlen und das Runden von Fließkommazahlen, für die Berechnung von Winkeln und das Erzeugen von Zufallszahlen.

23-02-02 SITEMAP CSS HTML JS Basis JS Web Tutorial SVG

Javascript Math – min, max

In Math liegen Wurzeln, Funktionen wie Sinus und Tangens, hier sind Javascript pi und Logarithmen zuhause und Math liefert das Minimum und Maximum einer Zahlenreihe, mit ES6 auch den max. bzw. min. Wert aus einem Array.

Die Methoden und Eigenschaften von Math () werden direkt verwendet: Math ist kein Konstruktor und kann nicht mit new benutzt werden. Alle Methoden und Eigenschaften des Math-Objekts sind statisch.

let x = 18.9;
let y = 200;
let z = 0.2345;

let größter = Math.max(x,y,z); 		// Größter Wert 
let kleinster = Math.min(x,y,z);	// Kleiner Wert 

Math.min() gibt – wie nicht anders zu erwarten, die kleinste aus einer Serie von Zahlen zurück. Allerdings verlangt Math.min() individuelle Werte und verdaut z.B. kein Array mit mehreren Zahlen.

Math.min(1, 2, 3, 4);
// 1
Math.min( [1, 2, 3, 4] );
// NaN

Da springt der ...spread-Operator ein, der einen Ausdruck auflöst und an Ort und Stelle in individuelle Elemente umwandelt.

Math.max(...array) // Maximum aus Array-Werten (drei Punkte: Spread-Operator)
Math.min(...array) // Minimum aus Array-Werten (drei Punkte: Spread-Operator)

Math – Methoden

Math.abs(x)     // absoluter Wert von x
Math.acos(x)    // Arcuscosinus von x als Bogenmaß
Math.asin(x)    // Arcussinus von x als Bogenmaß

Math.atan(x)    // Arcustangens, numerischer Wert zwischen -PI/2 und PI/2 Grad
Math.atan2(y,x) // Arcustangens des Quotienten des Arguments
Math.ceil(x)    // Aufrunden zum nächsten Integer

Math.cos(x)     // Cosinus als Bogenmaß
Math.exp(x)     // Wert von ex – wobei e die Eulersche Zahl ist (~ 2,71828) 
Math.floor(x)   // Abrunden auf die nächste ganze Zahl

Math.log(x)     // nat. Logarithmus zur Basis E
Math.max(x,…,z) // Maximum aus Werten
Math.min(x,…,z) // Min aus Werten

Math.pow(x,y)   // x hoch y

Math.random()   // Zufallszahl zwischen 0 und 1
Math.round(x)   // Rundet auf oder ab zum nächsten Integer (kaufmännisches Runden)
Math.sin(x)     // Sinus von x als Bogenmaß

Math.sqrt(x)    // Quadratwurzel von x
Math.tan(x)     // Tangente an einem Winkel

Beispiel: Javascript Wurzel berechnen

Das Beispiel für Exponentiell und Wurzel ist der Satz des Pythagoras a2 + b2 = c2 und zu den praktischen Einsätzen gehört die Berechnung des Cropfaktors in der digitalen Fotografie.

Normalbrennweite
Cropfaktor
<input type="number" id="wi" step="0.01">
<input type="number" id="hi" step="0.01">
<div style="margin-top: 1em">Normalbrennweite <span id="diag"></span></div>
<div style="margin-top: 1em">Cropfaktor <span id="crop"></span></div>
const wi = document.querySelector("#wi");
const hi = document.querySelector("#hi");

let wi2 = 0;
let hi2 = 0;

wi.addEventListener ("change", function () {
	wi2 = Math.pow(this.value,2);
	if (hi2 != 0) {
		document.querySelector ("#diag").textContent = Math.sqrt(wi2 + hi2).toFixed(1);
		document.querySelector("#crop").textContent = (43 / Math.sqrt(wi2 + hi2)).toFixed(1); 
	}
});


hi.addEventListener ("change", function () {
	hi2 = Math.pow(this.value,2);
	if (wi2 != 0) {
		document.querySelector ("#diag").textContent = Math.sqrt(wi2 + hi2).toFixed(1);
		document.querySelector("#crop").textContent = (43 / Math.sqrt(wi2 + hi2)).toFixed(1);
	}
});
  1. Bei Werten aus Eingabefeldern immer daran denken, dass Dezimalstellen mit einem Punkt "." anstelle des Kommas verarbeitet werden
  2. und prüfen, ob es sich um eine Zahl handelt (isNaN)

Beispiel Math.sin () – Sinus

Sinus und Cosinus sind Begriffe der Trigonometrie und beschreiben das Verhältnisse der Seiten in einem rechtwinkligen Dreieck im Verhältnis zum eingeschlossenen Winkel.

Für sich betrachtet, sind Sinus (Sinus kommt aus dem arabischen und heißt soviel wie Bogen) und Cosinus nichts weiter als einfache Zahlenwerte.

Math.sin(x) liefert für jede Eingabe eine Zahl zwischen -1 und +1. Gern für die Animation einer Schwingung mit Javascript genommen.

1
Math.sin() für die Animation von Schwingungen
function SineWave(c) {
    let s = Math.sin(c);
    let x = 500 - c * 700; // Bewegung auf der x-Achse
    let y = s * 90 + 250;  // Bewegung auf der y-Achse
    return [x, y];
};

Pi, Logarithmus, Euler

Math.PI		// Zahl PI
Math.E		// Eulersche Konstante
Math.LN2 	// nat. Logarithmus zur Basis 2
Math.LN10	// nat. Logarithmus zur Basis 10
Math.LOG2E	// konstanter Logarithmus von 2
Math.Log10E	// konstanter Logarithmus von 10