gpt4 book ai didi

javascript - .each(function () 不适用于浮点值

转载 作者:行者123 更新时间:2023-11-29 19:01:30 25 4
gpt4 key购买 nike

输出应该是 543.54 但我得到的是 542.00。请帮我解决我做错了什么。在此先感谢您。

function getTotal() {
var gtotal = 0.00;
$(".sub_total").each(function() {
subtotal = $(this).html() | 0;
gtotal = parseFloat(gtotal) + parseFloat(subtotal);
});
var gtotal = gtotal.toFixed(2);
$(".grand_total").html(gtotal);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="sub_total">267.33</div>
<div class="sub_total"></div>
<div class="sub_total">252.55</div>
<div class="sub_total">23.66</div>
<div class="grand_total"></div>
<a href="javascript:void(0);" onclick="getTotal()">Sum</a>

最佳答案

问题是因为您使用的是按位 OR 运算符,而不是逻辑 OR 运算符。

请注意,您可以通过使用 += 来增加 gtotal,将最后两行合并为一行,并使用不显眼的事件处理程序而不是丑陋的 on* 事件属性:

$(function() {
$('#sum').click(function(e) {
e.preventDefault();
var gtotal = 0.00;

$(".sub_total").each(function() {
subtotal = $(this).html() || 0; // note || here
gtotal += parseFloat(subtotal);
});

$(".grand_total").html(gtotal.toFixed(2));
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="sub_total">267.33</div>
<div class="sub_total"></div>
<div class="sub_total">252.55</div>
<div class="sub_total">23.66</div>
<div class="grand_total"></div>
<a href="#" id="sum">Sum</a>

关于javascript - .each(function () 不适用于浮点值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46633674/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com