Помогите! JavaScript не правильно считает! Например: 9*23.30=209.70000000000002, а верный ответ: 209.7.
Я так понимаю это из-за формата: IEEE-754
Помогите пожалуйста исправить маленький скрипт! Скрипт ниже!
<script type="text/javascript">
"use strict";
jQuery(function (){
$("#numb").change(function(){
$("#in").val("Обмен " + $("#paxum").val() + "USD на " + $("#np").val() + ". Номер карты "+ $("#numb").val() + " Способ вывода: " + $("#sys").val());
})
$("#paxum").change(function(){
$("#amount").val($("#paxum").val());
$("#in").val("Обмен " + $("#paxum").val() + " USD на " + $("#np").val() + ". Номер счета "+ $("#numb").val() + " Способ вывода: " + $("#sys").val());
$.ajax({
type: "POST",
url: "price.php",
dataType: "JSON",
data: {},
success: function ( data ) {
if($("#changeout").val() == 1)
{
$("#sys").val('Приват24');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['1'])+parseFloat($("#paxum").val())) + " ГРН");
$("#newprice").html("Вы получите: " + parseFloat($("#paxum").val()*parseFloat(data['1'])+parseFloat($("#paxum").val())) + " ГРН");
}
if($("#changeout").val() == 2)
{
$("#sys").val('Visa/Mastercard (Украина)');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['2'])+parseFloat($("#paxum").val()))+ " ГРН");
$("#newprice").html("Вы получите: " + parseFloat($("#paxum").val()*parseFloat(data['2'])+parseFloat($("#paxum").val())) + " ГРН");
}
if($("#changeout").val() == 3)
{
$("#sys").val('Visa/Mastercard (Россия)');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['3'])+parseFloat($("#paxum").val()))+ " РУБ");
$("#newprice").html("Вы получите: " + parseFloat($("#paxum").val()*parseFloat(data['3'])+parseFloat($("#paxum").val())) + " РУБ");
}
if($("#changeout").val() == 4)
{
$("#sys").val('Webmoney WMR');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['4'])+parseFloat($("#paxum").val()))+ " РУБ");
$("#newprice").html("Вы получите: " + parseFloat($("#paxum").val()*parseFloat(data['4'])+parseFloat($("#paxum").val())) + " РУБ");
}
if($("#changeout").val() == 5)
{
$("#sys").val('Яндекс.Деньги');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['5'])+parseFloat($("#paxum").val()))+ " РУБ");
$("#newprice").html("Вы получите: " + parseFloat($("#paxum").val()*parseFloat(data['5'])+parseFloat($("#paxum").val())) + " РУБ");
}
if($("#changeout").val() == 6)
{
$("#sys").val('Webmoney WMZ');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['6'])+parseFloat($("#paxum").val()))+ " WMZ");
$("#newprice").html("Вы получите (временно не работает): " + parseFloat($("#paxum").val()*parseFloat(data['6'])+parseFloat($("#paxum").val())) + " WMZ");
}
}
})
})
$("#changeout").click(function(){
$.ajax({
type: "POST",
url: "price.php",
dataType: "JSON",
data: {},
success: function ( data ) {
if($("#changeout").val() == 1)
{
$("#sys").val('Приват24');
$("#fix").html('номер карты (куда переводим)');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['1'])+parseFloat($("#paxum").val())) + " ГРН");
$("#newprice").html("Вы получите: " + parseFloat($("#paxum").val()*parseFloat(data['1'])+parseFloat($("#paxum").val())) + " ГРН");
}
if($("#changeout").val() == 2)
{
$("#sys").val('Visa/Mastercard (Украина)');
$("#fix").html('номер карты (куда переводим)');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['2'])+parseFloat($("#paxum").val()))+ " ГРН");
$("#newprice").html("Вы получите: " + parseFloat($("#paxum").val()*parseFloat(data['2'])+parseFloat($("#paxum").val())) + " ГРН <br>(без учета постоянной комиссии 5 грн за обмен)");
}
if($("#changeout").val() == 3)
{
$("#sys").val('Visa/Mastercard (Россия)');
$("#fix").html('номер карты (куда переводим)');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['3'])+parseFloat($("#paxum").val()))+ " РУБ");
$("#newprice").html("Вы получите: " + parseFloat($("#paxum").val()*parseFloat(data['3'])+parseFloat($("#paxum").val())) + " РУБ <br>(без учета постоянной комиссии 45 руб за обмен)");
}
if($("#changeout").val() == 4)
{
$("#sys").val('Webmoney WMR');
$("#fix").html('номер счета (куда переводим)');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['4'])+parseFloat($("#paxum").val()))+ " РУБ");
$("#newprice").html("Вы получите: " + parseFloat($("#paxum").val()*parseFloat(data['4'])+parseFloat($("#paxum").val())) + " РУБ");
}
if($("#changeout").val() == 5)
{
$("#sys").val('Яндекс.Деньги');
$("#fix").html('номер счета (куда переводим)');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['5'])+parseFloat($("#paxum").val()))+ " РУБ");
$("#newprice").html("Вы получите: " + parseFloat($("#paxum").val()*parseFloat(data['5'])+parseFloat($("#paxum").val())) + " РУБ");
}
if($("#changeout").val() == 6)
{
$("#sys").val('Webmoney WMZ');
$("#fix").html('номер счета (куда переводим)');
$("#np").val(parseFloat($("#paxum").val()*parseFloat(data['6'])+parseFloat($("#paxum").val()))+ " ");
$("#newprice").html("Вы получите: " + parseFloat($("#paxum").val()*parseFloat(data['6'])+parseFloat($("#paxum").val())) + " WMZ");
}
}
})
})
})
</script>