javascript - 浮点值需要在 0.59 之后四舍五入,就像秒一样
问题描述
这是一个脚本,它将添加在输入字段中输入的所有浮点值。但是我在ROUNDING THE VALUE遇到了问题。使用我的脚本,小数点前的值在 0.99 之后四舍五入(如商品价格)。但我想在 0.59(如分钟)之后四舍五入该值。
单击计算按钮时,该值将显示在另一个输入字段中。
function add_number() {
var first = parseFloat(document.getElementById("sunday").value);
var second = parseFloat(document.getElementById("monday").value);
var third = parseFloat(document.getElementById("tuesday").value);
var forth = parseFloat(document.getElementById("wednesday").value);
var fifth = parseFloat(document.getElementById("thursday").value);
var sixth = parseFloat(document.getElementById("friday").value);
var seventh = parseFloat(document.getElementById("saturday").value);
var rsl = first + second + third + forth + fifth + sixth + seventh;
document.getElementById("txtresult").value = rsl.toFixed(2);
}
<input type="number" name="sunhrs" id="sunday" />
<input type="number" name="monhrs" id="monday" />
<input type="number" name="tuesday" id="tuesday" />
<input type="number" name="wedhrs" id="wednesday" />
<input type="number" name="thurshrs" id="thursday" />
<input type="number" name="frihrs" id="friday" />
<input type="number" name="sathrs" id="saturday" />
<button onclick="add_number()">Calculate</button>
<br>
<br>
<input type="number" name="txtresult" id="txtresult" />
示例:如果我在输入字段中输入 1.50,1.50 并单击计算按钮,则输出将为3.00,因为该值在 0.99 之后四舍五入。但我希望值在0.59之后四舍五入,所以输出将为3.40。
提前致谢。
已编辑:帖子中的第一个问题(在我更改之前);“结果”这个词对于 JavaScript 来说是特殊的,我没有将它用于变量名。
其次,忘记添加 id 为 txtresult 的元素
;) 感谢您的关注。
解决方案
为了以您想要的方式将这些值相加,您需要将输入转换为小数小时,然后从小数小时转换回所需的表示形式。JavaScript 没有内置“小时”数据结构。JavaScriptNumber
类型具有十进制基数,因此它只能像常规十进制数字一样工作。
例如
var first = hoursFromString(document.getElementById("sunday").value);
//etc.
然后
document.getElementById("txtresult").value = stringFromHours(result);
如果您需要写作hoursFromString
或帮助stringFromHours
,请使用您遇到问题的部分的更多信息更新您的问题。
推荐阅读
- node.js - 使用 Express 使用 SSL 自托管 Bitbucket
- python-3.x - 属性在 selenium Python 中引发 NoSuchElementException
- mapbox - 有没有办法根据移动和桌面查看来更改 Mapbox 地图中的图标大小?
- java - 如何在 JAVA 中按两个条件排序?
- ms-access - 当我希望它为只读时,MS Access 链接组合框正在更新源表
- java - 使用 javac -cp "commons-lang3-3.10.jar" 编译时,带有 jar 文件的线程“Thread-1”NoClassDefFoundError 出现异常
- javascript - JavaScript 扩展了 eval() 函数?
- reactjs - 出于某种原因,reactjs for loop 停止在 1 并且尝试在循环中使用设置状态时出现问题
- html - 导航菜单推到页面的最右侧
- python - 避免在 CTRL+C 异步后回溯