проблема потери точности значения el-input: значение el-inpu * 100 единиц преобразования появляется много знаков после запятой

Это требование основано на функции поиска.Единицей данных на странице является м, а сервер получает ее в см. Изначально было очень просто отправить на сервер *100.В результате тестируемые студенты обнаружили следующее призрачный баг:

 

Как мы все знаем: 0,1+0,2!==0,3 в js, потому что js использует числа с плавающей запятой двойной точности , поэтому при кодировании данных, хранящихся на компьютере, будут ошибки;

 

Требование в этом вопросе - разрешить пользователю вводить два десятичных знака.В проекте есть пользовательские команды, которые ограничивают ввод только двумя знаками.При устранении неполадок обнаружено, что только когда два десятичных знака после ввода больше 5, появится ошибка-призрак, описанная выше.Например, (15.99) и тому подобное, (15.33) не будет такой проблемы..., я очень хотел выйти в интернет и решил проблему с помощью Math.round ( value * 100) .

Затем запишите метод, сохраняющий два десятичных знака:

fomatFloat(src) { 
      return Math.round(src * Math.pow(10, 2)) / Math.pow(10, 2); 
    }

Цифра 2 вверху — это количество цифр, которые можно поднять и переупаковать, и сколько десятичных цифр нужно сохранить и передать.

Просто запомните его, а затем исправьте ОШИБКУ.

рекомендация

отblog.csdn.net/m0_58481462/article/details/126585030