在 javascript 中计算不正确的问题

Issue with incorrect calculation in javascript

本文关键字:问题 不正确 计算 javascript      更新时间:2023-09-26
    var spring = this.getField("Calibration_Spring_Value_low").value;
    if (event.value > (spring + .2) || event.value < spring - .2) {
        event.rc = false
        app.alert("Value is out of range");
        }

上面的代码片段用于 Adobe Acrobat 中数据表单的字段验证。 当我按编写方式运行它时,将事件值与 Spring 值的 +/- .2 进行比较时,它可以正常工作。 但是,当我为"spring"值输入值 19.9 时,表单将拒绝值 20.1。 这似乎是此失败的唯一一组值。

我设法通过将语句更改为此来在其上贴上创可贴

if (event.value >= (spring + .3) || event.value  < spring -.2) {

是否有任何见解可以了解为什么以这种方式进行建模,以及我如何正确解决问题并确保它将正确执行所有输入的值?

尝试用括号?

if (event.value > (spring + .2) || event.value < (spring - .2)) {