martedì 30 agosto 2011

How To: javascript ceil e floor

Ceil e Floor in javascript restituiscono un numero arrotondato per eccesso nel primo caso e per difetto nel secondo.

Entrambi appartengono a Math e il loro utilizzo è discretamente diffuso, soprattutto se si sta realizzando un applicazione dove è necessario verificare i dati immessi in
un form ( posto che questi siano numeri ).

Math.ceil(9.9) restituisce 10
Math.floor(9.9) restituisce 9

Di contro potrebbe essere plausibile comprendere quali dei due arrotondamenti utilizzare e in che misura.

var y = 0;

if (Math.ceil(x) == Math.floor(x))
{
// in questo caso è uguale
y =Math.ceil(x);
}
else
{
// esempio
// 10 è il ceil di 9,1
// ma evidentemente vogliamo
// ottenere 9 e non 10
if ( Math.ceil(x)-x > 0)
{
y =Math.floor(x);
}
else
{
y =Math.floor(x);
}
}


In questo caso un esempio di come si potrebbero utilizzare sia il ceil che il floor.

Nessun commento: