oggetto math

Argomenti trattati: l'oggetto Math e le funzioni matematiche.

L'oggetto Math è un'oggetto incorporato JavaScript, che rappresenta delle funzioni e delle proprietà matematiche.

Metodi
abs(num) Restituisce il valore assoluto di num
acos(num) Restituisce l'arcocoseno di num
asin(num) Restituisce l'arcoseno di num
atan(num) Restituisce l'arcotangente di num
atan2 (num1, num2) Restituisce l'angolo, espresso in radianti, compreso tra l'asse X e il punto specificato (y,x).
ceil(num) Restituisce il valore intero minimo che risulta maggiore o uguale all'argomento numerico specificato
cos(num) Restituisce il coseno di num
exp(num) Restituisce l'esponente di num
floor(num) Restituisce il valore passato arrotondato all'intero precedente
log(x) Restituisce il logaritmo naturale di num
max (num1, num2) Restituisce il maggiore tra num1 e num2
min(num1,num2) Restituisce il minore tra num1 e num2
pow(num1, num2) Restituisce num1 elevato alla potenza di num2
random() Restituisce un numero casuale
round(num) Restituisce il valore di num arrotondato all'intero più vicino
sin(num) Restituisce il seno di num
sqrt(num) Restituisce la radice quadrata di num
tan(num) Restituisce la tangente di num
Proprietà
E corrisponde alla costante di Eulero, ovvero la base di un logaritmo naturale Corrisponde al valore 2,718
LN10 corrisponde al logaritmo naturale in base 10 Corrisponde a 0,693
LN2 corrisponde al logaritmo naturale in base 2 Corrisponde a 2,302
LOG2E corrisponde al logaritmo in base 2 di E Corrisponde a 1,442
LOG10E corrisponde al logaritmo in base 10 di E Corrisponde a 0,434

 

PI corrisponde al PI Greco

La costante che rappresenta il rapporto tra la circonferenza di un cerchio e il suo diametro (equivalente a 3,14)

SRQT1_2 corrisponde a 1 diviso la radice quadrata di 2 Corrisponde a 0,707
SRQT2 corrisponde alla radice quadrata di 2 Corrisponde a 1,414

L'oggetto Math è considerato un oggetto statico:

!!! Non è possibile scrivere x=new Math() !!!

Questo vuol dire che l'oggetto non può essere istanziato, ma soltanto utilizzato staticamente.

Ad esempio, volendo ricavare la costante PI GRECO ed assegnarla ad una variabile, potremmo scrivere:

x=Math.PI

Per esemplificare uno dei casi in cui è necessario usare l'oggetto Math, viene proposto un esempio relativo ad un semplicissimo Euroconvertitore. Poiché le esigenze di visualizzazione hanno reso necessario impostare  la chiamata alle funzioni che svolgevano la conversione per ogni valuta, qui viene descritto soltanto l'esempio relativo alla conversione Lira-Euro, valido per qualunque conversione, anche se con tassi differenti per le altre monete. 


Per convertire da valuta nazionale ad Euro:

Si divide l'importo per il tasso di conversione (Es.: Lire 1000/1936,27) 
l’importo ottenuto (in Euro) va troncato alla terza cifra decimale 
si arrotonda il risultato ottenuto al secondo decimale 
- per difetto se la terza cifra decimale va da 0 a 4,
- per eccesso se la terza cifra decimale va da 5 e 9.
Es.: Lire 10000/1936,27=5,16456899
Valuto la terza cifra decimale: 5,16456899. 
Essendo 4, la seconda cifra decimale non va arrotondata per eccesso, ma per difetto, e rimane 6.
Tronco alla seconda cifra decimale, e ottengo 5,16 Euro.
Detto questo, passiamo al codice vero e proprio nell'intestazione dell'esempio:
function campovuoto(risposta)
{
    if (risposta=="" || isNaN(risposta))

  /* Occorre controllare se il numero immesso nella casella di testo LE è vuota, 
      oppure se non è un numero valido: in entrambi i casi, il form viene azzerato, 
      poiché la conversione causerebbe un errore */
   { 
       alert('Il numero immesso non è valido. \n Leggete le precedenti istruzioni per l\'immissione del numero');
       document.form2.reset();
   }
   else
      convertiL();
}

function convertiL()
{
    document.form2.Euro.value=Math.round(((eval(document.form2.LE.value)/1936.27*1000)/10))/100;
     /*  - primo passo: moltiplicazione del rapporto per 1000
          - secondo passo: il rapporto viene diviso per 10
          - terzo passo: il rapporto viene arrotondato tramite il metodo Math.Round(), 
            per arrotondare la terza cifra decimale
          - quarto passo: il rapporto viene diviso per 100, ottenendo il valore della conversione */
} 

Altri metodi utilizzabili in questo caso sono:
-document.form2.Euro.value=Math.round((eval(document.form2.LE.value)/1936.27*100)/100;
-document.form2.Euro.value=Math.floor((eval(document.form2.LE.value)/1936.27*1000+5)/10)/100

Per comprendere come la funzione viene richiamata, occorre soffermarsi sull'evento onClick del pulsante "esegui", perché cliccando sul pulsante si esegue la funzione "risposta" utilizzando come parametro il valore della casella di testo deputata a raccogliere il valore delle Lire che si devono convertire.
 <input type="button"name="esegui"value="esegui"onClick="campovuoto(document.form2.LE.value);">

Visualizza l'esempio

Vai agli oggetti incorporati


Torna all'inizio | Home