Как округлить это число с помощью метода toLocaleString ()? - PullRequest
0 голосов
/ 28 февраля 2019

У меня есть это число: 7.425000000000001

И я хочу округлить его следующим образом: 7,42 €

Но мой результат составляет 7,43 €

Это мой код:

 this.article.price_pvp.toLocaleString('de-DE', 
       {
            style: 'currency', 
            currency: 'EUR',
            maximumFractionDigits: 2 
        }); //this return me 7,43

Ответы [ 3 ]

0 голосов
/ 28 февраля 2019

Попробуй это.Вы можете изменить значение n в соответствии с необходимой точностью.Тогда вы можете использовать toLocaleString

var a=7.425000000000001
var n=2;
console.log(a.toFixed(n)-(1/Math.pow(10,n))*(n-1))
0 голосов
/ 28 февраля 2019

Попробуйте это.Я думаю, вам нужно проанализировать это значение с плавающей запятой до 2 цифр после десятичной точки.

this.article.parseFloat(price_pvp).toFixed(2).toLocaleString('de-DE', { style: 'currency', currency: 'EUR', maximumFractionDigits: 2 });

0 голосов
/ 28 февраля 2019

Это округление из-за 5 - сначала используйте toFixed(2):

this.article.price_pvp.toFixed(2).toLocaleString('de-DE', 
   {
        style: 'currency', 
        currency: 'EUR',
        maximumFractionDigits: 2 
    });

РЕДАКТИРОВАТЬ

Измените его на число с плавающей точкой, затем строку, затем возьмите первые пять цифр ииспользуйте toFixed():

parseFloat(parseFloat(this.article.price_pvp).toString.substring(0, 5)).toFixed(2);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...