请告诉我为什么更改数量时会有小数点后10位的数字?
function plus_modifier_count_product() {
var count = parseFloat($("#amount").val());
var new_count = count + 0.1;
$("#amount").val(new_count);
}
function minus_modifier_count_product() {
var count = parseFloat($("#amount").val());
var new_count = count - 0.1;
$("#amount").val(new_count);
}
.modifier_count {
display: inline-block;
width: 20px;
border: 2px solid blue;
text-align: center;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="modifier_count" onclick="minus_modifier_count_product();">-</div>
<input type="number" id="amount" placeholder="Количество" value="1.5" step="0.1">
<div class="modifier_count" onclick="plus_modifier_count_product();">+</div>
因为在 JavaScript 中,小数运算存在精度损失问题。更多关于这一点的内容写在这里。