首页 > 解决方案 > JavaScript 检查值是否优越并尊重倍数

问题描述

我在如何实现检查值方面遇到了一些麻烦:

我有一个用户可以增加的输入。当此输入达到每 100 的倍数(100,200,300,400 .....)时,它会更新屏幕上显示的计数。

我的原始代码是:

if(Number.isInteger(actualValue/100)){
                        input.base += 1;
        }

问题是现在用户增加 1 或 2 或 3 等...如果我在 99 并且我增加 2,使用这个实际代码,它不会更新输入。

如何检查该值是否等于或大于 100 的倍数?

他也可以递减,所以我必须做相反的操作并将输入更新为-1。

我不知道该去哪里。欢迎任何建议!

编辑 :

一个快速的 JSfiddle 让你知道发生了什么:https ://jsfiddle.net/4h1u6d2x/

尝试转到 10 然后您可以尝试从 19 转到 21 并看到这没有更新!

标签: javascript

解决方案


我不确定 99 是从哪里来的,但是您可以在技术上循环通过增加/减少的数量,从您提到的 99 中添加或减去(假设这是保存在某处的运行总数),并检查是否在 ANY POINT 的返回值可以被 100 整除。

像这样的东西。

让 user_input = 8 var input = 0;

for (let i = 0; i < user_input; i++){
    let sum = i + 93;
    if (sum % 100 === 0){
        input++
        break
    }
}

控制台日志(输入)

这样,无论用户增加或减少输入多少次,您都在检查每一个可能的和/差。


推荐阅读