Cortar decimales no utilizados con javascript

Tengo una entrada de moneda y necesito devolver solo dígitos significativos. La entrada siempre tiene dos decimales, por lo que:

<code>4.00  ->  4
4.10  ->  4.1
4.01  ->  4.01
</code>

Así es como lo estoy haciendo actualmente:

<code>// chop off unnecessary decimals
if (val.charAt(val.length-1) == '0') { // xx.00
    val = val.substr(0, val.length-1);
}
if (val.charAt(val.length-1) == '0') { // xx.0
    val = val.substr(0, val.length-1);
}
if (val.charAt(val.length-1) == '.') { // xx.
    val = val.substr(0, val.length-1);
}
</code>

que funciona, y tiene una cierta franqueza que me gusta, pero tal vez hay una manera más bonita.

Supongo que podría usar un bucle y ejecutarlo tres veces, pero en realidad eso parece que será al menos tan voluminoso para cuando condicionalice la instrucción if. Aparte de eso, ¿alguna idea? Me imagino que también hay una forma regular de hacerlo ...

Respuestas a la pregunta(7)

Su respuesta a la pregunta