Перейти к содержимому

Фотография
- - - - -

Нужна помощь! Как снять округление в калькуляторе?


  • Вы не можете создать новую тему
  • Закрытая тема Тема закрыта
Сообщений в теме: 4

#1 AlexChook

AlexChook

    Прохожий

    Топикстартер
  • Новичок
  • 0
    3 сообщ.

Отправлено 19 Май 2017 в 23:52

Доброго времени суток!

 

 

Не мугу снять округление цены в калькуляторе. Вот часть кода, отвечающая за округление:

$('.js_s2w_calc_result_cost').text(Math.floor(Math.ceil(resultSquareToBuy*itemPrice)/100)*100);

Пробовал сделать так:

$('.js_s2w_calc_result_cost').text(parseFloat(resultSquareToBuy*itemPrice)/1);

Почти удалось  достигнуть результата. но не совсем: нужно, чтобы итоговая стоимость была 1234 руб 50  коп., а получается 1234 руб. 495 коп.. Как решить этот вопрос?


  • 0

Спонсор

#2 BaNru

BaNru

    Пацифизжу

  • суперМодератор
  • 1004
    3 630 сообщ.

Отправлено 20 Май 2017 в 00:44

Округляют сразу две функции Math.floor и Math.ceil
Всё правильно удалил.
Только вместо деления на 1, надо воспользоваться toFixed
http://javascript.ru/number/tofixed
 
Должно быть как-то так

$('.js_s2w_calc_result_cost').text(parseFloat(resultSquareToBuy*itemPrice).toFixed(2));

  • 0

#3 AlexChook

AlexChook

    Прохожий

    Топикстартер
  • Новичок
  • 0
    3 сообщ.

Отправлено 20 Май 2017 в 17:42

 

Округляют сразу две функции Math.floor и Math.ceil
Всё правильно удалил.
Только вместо деления на 1, надо воспользоваться toFixed
http://javascript.ru/number/tofixed
 
Должно быть как-то так

$('.js_s2w_calc_result_cost').text(parseFloat(resultSquareToBuy*itemPrice).toFixed(2));

Спасибо большое Помогло! Только произошло уменьшение вниз. То есть получилось не 50 коп, а 49. Воспользовался справочником, пробовал использовать n.toFixed(2) и другие варианты - так калькулятор совсем не работает.

 

Если есть идеи, как округлить сотые вверх, будет совсем классно! Но я и этому рад! Ещё раз спасибо!


  • 0

#4 BaNru

BaNru

    Пацифизжу

  • суперМодератор
  • 1004
    3 630 сообщ.

Отправлено 21 Май 2017 в 02:18

Ну так изначально и было это сделано. Играйся с Math.floor, Math.ceil и "/100)*100"

Мне, если честно, лень вникать. Тут обычная математика за 5тый класс.

 

Грубо говоря сейчас там выражение

Math.floor(Math.ceil(resultSquareToBuy*itemPrice)/100)*100
Обычное округление ( округление в большую сторону (одно умноженное что-то на что-то) разделенное на 100 ) умноженное на 100

  • 0

#5 AlexChook

AlexChook

    Прохожий

    Топикстартер
  • Новичок
  • 0
    3 сообщ.

Отправлено 21 Май 2017 в 05:28

 

Ну так изначально и было это сделано. Играйся с Math.floor, Math.ceil и "/100)*100"

Мне, если честно, лень вникать. Тут обычная математика за 5тый класс.

 

Грубо говоря сейчас там выражение

Math.floor(Math.ceil(resultSquareToBuy*itemPrice)/100)*100
Обычное округление ( округление в большую сторону (одно умноженное что-то на что-то) разделенное на 100 ) умноженное на 100

Спасибо!


  • 0



Похожие темы Свернуть

Статистика

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 скрытых пользователей