2016-10-15 1 views
1

`` `Почему Javascript не возвращает округленное число

function addTwoDigits(n) { 
var result; 
result = Math.floor(n/10) + 10*(n/10-Math.floor(n/10)); 
console.log(result); 
return result; 

} 
addTwoDigits(29); 

` `` выход был 10,9999999999999999999999999999999 Интересно, почему это не 11 было, так как в соответствии с обычным способом расчета должна быть округлена уже, но это не. За этим стоит скрытая компьютерная наука?

+0

проверить это [сообщение] (http://stackoverflow.com/questions/11832914/round-to-at-most-2-decimal-places-in-javascript). Надеюсь это поможет. – jmj

ответ

0

поставил Math.round()

function addTwoDigits(n) { 
var result; 
result = Math.floor(n/10) + 10*(n/10-Math.floor(n/10)); 
console.log(Math.round(result)); 
return result; 

} 
addTwoDigits(29); 

Надеется, что это помогает.

+0

tks для щадящего вашего времени, но я на самом деле имею в виду, что я хочу знать, почему результат был 10.99999999. Я знаю, мы могли бы использовать Math.round alreaduy: D – NewbieCodeGuy

Смежные вопросы