Есть ли лучший способ выяснить количество десятичных знаков в числе, чем в моем примере?
var nbr = 37.435.45;
var decimals = (nbr!=Math.floor(nbr))?(nbr.toString()).split('.')[1].length:0;
Под «лучше» я подразумеваю более быстрое выполнение и/или использование встроенной функции JavaScript, т.е. что-то вроде nbr.getDecimals().
Заранее спасибо!
РЕДАКТИРОВАТЬ:
После изменения ответа серии 0ne самый быстрый способ, которым я мог бы управлять, это:
var val = 37.435345;
var countDecimals = function(value) {
if (Math.floor(value) !== value)
return value.toString().split(".")[1].length || 0;
return 0;
}
countDecimals(val);
Тест скорости: http://jsperf.com/checkdecimals