增加和减少变量,直到在javascript中达到一个数字

Car*_*osa 4 javascript variables loops javascript-events

如何在javascript中增加和减少变量直到100,当达到100时,它应该开始减少.

因此,accuracyBarValue应该从0开始,增加到100,当达到100时,它应该变为0,然后重复过程.

这间隔10.

我在一个非常简单的JS游戏中使用它,这个值用于增加和减少PowerBar.

提前致谢.

cod*_*ger 11

这是对此的另一种看法:

var up = true;
var value = 0;
var increment = 10;
var ceiling = 100;

function PerformCalc() {
  if (up == true && value <= ceiling) {
    value += increment

    if (value == ceiling) {
      up = false;
    }
  } else {
      up = false
      value -= increment;

      if (value == 0) {
        up = true;
      }
  }

  document.getElementById('counter').innerHTML = 'Value: ' + value + '<br />';
}
setInterval(PerformCalc, 1000);
Run Code Online (Sandbox Code Playgroud)
<div id="counter"></div>
Run Code Online (Sandbox Code Playgroud)


meo*_*meo 6

代码

\n
let i = 100;\nsetInterval(() => {\n  console.log(Math.abs((i+=10)%200 - 100))\n}, 1000);\n
Run Code Online (Sandbox Code Playgroud)\n

解构主义

\n
    \n
  1. i+=10\xe2\x86\x92i在每个刻度上无限期地增加 10
  2. \n
  3. %100\xe2\x86\x92 以两倍最大值为模(除法剩余 ex. 10 % 6 = 4)
  4. \n
  5. - 100\xe2\x86\x92 删除范围(因此数字将始终在 100 和 -100 之间,否则它将在 0 和 6 之间)
  6. \n
  7. Math.abs()\xe2\x86\x92 删除 - (确保数字从 0 移动到 100 并返回)
  8. \n
\n

步骤可视化

\n

我++

\n
\xe2\x88\x9e       .\n       .\n      .\n     /\n    /\n   / \n  /\n0\n
Run Code Online (Sandbox Code Playgroud)\n

(i+=10)%200

\n
200 \n     /    /    /    .\n    /    /    /    .\n   /    /    /    .\n  /    /    /    /\n /    /    /    /\n0\n
Run Code Online (Sandbox Code Playgroud)\n

i++%200-100

\n
100 \n  \\        /\\        /\\\n   \\      /  \\      /  \\\n0   \\    /    \\    /    .\n     \\  /      \\  /      .\n      \\/        \\/        .\n-100\n
Run Code Online (Sandbox Code Playgroud)\n

数学.abs(i++%200-100)

\n
100 \n  \\    /\\    /.\n   \\  /  \\  /  .\n    \\/    \\/    .\n0\n
Run Code Online (Sandbox Code Playgroud)\n

实施例

\n

\r\n
\r\n
\xe2\x88\x9e       .\n       .\n      .\n     /\n    /\n   / \n  /\n0\n
Run Code Online (Sandbox Code Playgroud)\r\n
200 \n     /    /    /    .\n    /    /    /    .\n   /    /    /    .\n  /    /    /    /\n /    /    /    /\n0\n
Run Code Online (Sandbox Code Playgroud)\r\n
\r\n
\r\n

\n

替代方法(基于浮动)

\n
100 \n  \\        /\\        /\\\n   \\      /  \\      /  \\\n0   \\    /    \\    /    .\n     \\  /      \\  /      .\n      \\/        \\/        .\n-100\n
Run Code Online (Sandbox Code Playgroud)\n

或者

\n
100 \n  \\    /\\    /.\n   \\  /  \\  /  .\n    \\/    \\/    .\n0\n
Run Code Online (Sandbox Code Playgroud)\n

哪里i有-float之间。结果也是需要乘以您的最大值并四舍五入(目标值)。0Infinityfloat

\n