Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial
  • Lezione 22 di 112
  • livello avanzato
Indice lezioni

Math, funzioni matematiche in JavaScript

Math è un oggetto statico con metodi richiamabili da qualsiasi punto di un programma: funzioni trigonometriche, logaritmi e esponenziali, pi greco, eulero..
Math è un oggetto statico con metodi richiamabili da qualsiasi punto di un programma: funzioni trigonometriche, logaritmi e esponenziali, pi greco, eulero..
Link copiato negli appunti

Per il supporto di funzioni matematiche JavaScript prevede l'oggetto Math. A differenza dell'oggetto Number che abbiamo già visto e di altri oggetti che vedremo in seguito, Math non consente la creazione di nuove istanze. Possiamo pensare ad esso come ad una API. È un oggetto statico che mette a disposizione proprietà e metodi richiamabili da qualsiasi punto di uno script.

Proprietà di Math in JS

Le proprietà previste dall'oggetto rappresentano alcune costanti matematiche:

Proprietà Descrizione
E La costante di Eulero, base dei logaritmi naturali, con un valore approssimativo di 2.718
LN2 Il logarimto di 2, con un valore approssimativo di 0,693
LN10 Il logaritmo di 10, con un valore approssimativo di 2,303
LOG2E Il logaritmo in base 2 della costante di Eulero, circa 1,443
LOG10E Il logaritmo in base 10 della costante di Eulero, circa 0,434
PI Il valore di pi greco, approssimativamente 3,14
SQRT1_2 La radice quadrata di 1/2, circa 0,707
SQRT2 La radice quadrata di 2, con un valore approssimativo di 1,414

Queste costanti sono utilizzabili come un qualsiasi valore numerico, come mostrato nel seguente esempio:

if (x > Math.PI) {
console.log("Valore maggiore di pi greco");
}
console.log("Il doppio di pi greco è " + Math.PI * 2)

I metodi di Math in JavaScript

I metodi dell'oggetto Math rappresentano le più comuni funzioni matematiche. Abbiamo, ad esempio, i metodi max() e min() per ottenere il valore più grande o più piccolo in un insieme di numeri:

Math.max(89, 13, 6.4, 49, 87.2, 121, 40); //121
Math.min(89, 13, 6.4, 49, 87.2, 121, 40); //6.4

Per l'elevamento a potenza e la radice quadrata di un numero abbiamo rispettivamente i metodi pow() e sqrt():

Math.pow(4, 3); //4³ = 64
Math.sqrt(144); //12

Per l'arrotondamento o l'approssimazione di valori decimali abbiamo i metodi:

Metodo Descrizione
ceil() restituisce il più piccolo intero maggiore o uguale ad un numero
floor() restituisce il più grande intero minore o uguale ad un numero
round() effettua l'arrotondamento all'intero più vicino, in base al valore dell'ultima cifra decimale

Math.ceil(3.4); //4
Math.floor(3.4) //3
Math.round(3.4) //3
Math.round(3.6) //4

Numeri causali, il metodo random()

Il metodo random() genera un numero casuale compreso tra 0 e 1. Combinando opportunamente questo metodo con il metodo floor() è possibile generare interi casuali compresi tra un minimo ed un massimo arbitrari, come mostrato dalla seguente funzione:

function generaInteroCasuale(min, max) {
return Math.floor(Math.random() * (max - min + 1) + min);
}

Altri metodi JS

Metodo Descrizione
abs() restituisce calcolo del valore assoluto (senza segno) di un numero
log() calcola il logaritmo naturale (in base E) di un numero
sin()
cos()
tan()
atan()
Funzioni trigonometriche per calcolare rispettivamente il seno, il coseno e la tangente di un numero, fondamentali per gestire grafica

Calcolo dell'angolo di un vettore rispetto all'origine

Interessante anche Math.atan2(y, x) che ritorna l'arcotangente del quoziente tra y e x, in altre parole fornisce il coefficiente angolare, l'angolo o l'orientamento rispetto all'origine di un vettore (x,y). Molto utile soprattutto quando si lavora con la grafica.

Ti consigliamo anche