Esto también depende de lo que quieras hacer con el resto (como comentaron los comentadores). Por ejemplo, si el número base es 1.03, ¿desea que el resto devuelto sea 3 o 03? Quiero decir, ¿lo quiere como número o como cadena (para mostrarlo al usuario)? Un ejemplo sería la visualización del precio del artículo, donde no desea conversar 03 a 3 (por ejemplo $ 1.03) donde desea superíndice 03.
A continuación, el problema es con la precisión del flotador. Considere esto:
var price = 1.03;
var frac = (price - Math.floor(price))*100;
// frac = 3.0000000000000027
para que pueda "resolver" esta por corte de la representación de cadena sin multiplicación (y opcional-relleno con ceros) en tales casos. Al mismo tiempo, evitas el problema de precisión flotante. También se demostró en this jsfiddle.
This post acerca de la precisión flotante podría ayudar tan bien como this one.
Tu pregunta no está bien definida. Para un número fp, el número de dígitos después de los puntos decimales depende de cómo lo visualice (la representación real no está en base-10, por lo que debe redondearse para mostrarse en base-10). – sleske
¿Cómo pretendes mostrar 'var f = 0.0145;'? '145' o' 0145'? –
Fuera de interés, ¿qué le gustaría mostrar en el caso de 0.123456 y 0.1? – Chris