我的脚本计算产品的重量。全箱重量25.2KG。每个项目重4.2KG,制作6个整箱。
如果是框,我正在使用Javascript。
alert(jsonData.total_weight + ' % ' + fullpackweight + ' = ' + jsonData.total_weight % fullpackweight);
if(jsonData.total_weight % fullpackweight == 0) {
$('#fill_status').hide();
$('#fill_status i').html('OK ' + jsonData.total_weight);
} else {
$('#fill_status').show();
$('#fill_status i').html('NOT OK ' + jsonData.total_weight);
}
脚本顶部的警告框提供以下结果:
25.2 % 25.2 = 0
50.4 % 25.2 = 0
75.6 % 25.2 = 25.199999999999996 (WHY?)
100.8 % 25.2 = 0
126 % 25.2 = 3.552713678800501e-15 (WHY?)
任何人都可以解释这种行为吗?
答案 0 :(得分:1)
问题是你使用浮点而不是整数来模数。
75.6 % 25.2 = 25.199999999999996
BUT
756 % 252 = 0
因此,转换为整数(使用* 10)将解决您的问题。
检查
25.199999999999999 - 25.2
它会给你0:D