2016-12-29 2 views
1

Предположим, я хочу предложить цену для пользователей в обратном направлении.Как округлить или округлить десятичные знаки?

В обратном направлении:

  • 1,23 => 1.20
  • 2.35 => 2.30
  • 3.59 => 3.50
  • 4,99 => 4,90

Для вперед:

  • 1,23 => 1,30
  • 2,35 => 2,40
  • 3,59 => 3,60
  • 4,99 => 5,00

Я попытался с помощью math.floor() и math.ceil(), но это будет только вокруг его до ближайшего целое число. Можете ли вы дать мне решение или предложение?

ответ

5

Вы можете использовать Math.floor(a*10)/10 и Math.ceil(a*10)/10, где a - номер, который вы хотите объединить.

console.log(Math.floor(1.23*10)/10) 
 
console.log(Math.floor(2.35*10)/10) 
 
console.log(Math.floor(3.59*10)/10) 
 
console.log(Math.floor(4.99*10)/10) 
 
console.log('') 
 
console.log(Math.ceil(1.23*10)/10) 
 
console.log(Math.ceil(2.35*10)/10) 
 
console.log(Math.ceil(3.59*10)/10) 
 
console.log(Math.ceil(4.99*10)/10)

Если вам необходимо окончательное значение в виде строки в формате x.yy (и не X.Y), вы можете использовать toFixed(2) (т.е. (Math.ceil(1.23*10)/10)).toFixed(2))

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