У меня есть номер javascript 12.1542. и я хочу новую строку 12. (1542 * 60) из этой строки.получить значение после десятичной точки в javascript
Как я могу его получить. Благодаря
У меня есть номер javascript 12.1542. и я хочу новую строку 12. (1542 * 60) из этой строки.получить значение после десятичной точки в javascript
Как я могу его получить. Благодаря
пол, вероятно, метод, чтобы получить то, что вы хотите:
http://www.w3schools.com/jsref/jsref_floor.asp
Вы также можете использовать CEIL
Пожалуйста, воздержитесь от цитирования W3Schools, прочтите здесь почему. http://w3fools.com/ –
Это даст вам деталь * до * десятичной точки, а не после. –
@limelights: хорошая точка. https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Math –
(12.1542).toString().replace(/\.(\d+)/, ".($1*60)");
// "12.(1542*60)"
Yo у мог бы использовать modulus operator:
var num = 12.1542;
console.log(num % 1);
Однако, в связи с характером чисел с плавающей точкой, вы получите число, которое очень немного отличается. В приведенном выше примере Chrome дает мне 0.15419999999999945
.
Другой (чуть больше) вариант будет использовать Math.floor
, а затем вычесть результат из исходного числа:
var num = 12.1542;
console.log(num - Math.floor(num));
Опять же, в связи с характером чисел с плавающей точкой, вы будете в конечном итоге с номером, очень немного отличается от того, что вы можете ожидать.
Вы также можете использовать toFixed (X) исправить номер: 'console.log ((num - Math.floor (num)). toFixed (2)); ' –
Input здравомыслия проверяет в сторону, это должно работать:
var str = '12.1542';
var value = Math.floor(str) + (60 * (str - Math.floor(str)));
Вам не хватает закрывающей круглой скобки, но если вы ее добавите, это приведет к появлению' 21.251999999999967', что я не думаю, что ищет OP. –
Thx. Добавлена скобка. Я думаю, почти никто здесь полностью не уверен, что на самом деле хочет :-) – Sirko
Время в десятичные:
function toDec(sec){
var itg=Math.floor(sec);
sec=(sec-itg)*60;
return itg+sec; // OR: return new String(itg+sec);
}
где делает это '* 60' пришел? – Joseph
Если новая строка будет '12.92520' или' 12. 12. (1542 * 60) "' (буквально)? –
... или '" 12 "+ (0.1542 * 60)' – nnnnnn