JavaScript 中的模数运算符 (%) 是什么?

javascriptweb developmentfront end technology更新于 2024/8/16 14:13:00

在本教程中,我们将学习 JavaScript 中的模数运算符。在某些语言中,模数运算符也称为余数运算符。余数 运算符和模数运算符都用于获取整数除以其他整数后的余数,但它们在余数的符号方面有所不同,即除法后返回的余数是正数还是负数。

在表达式a % b中,a 称为被除数,而 b 称为除数。在模数的情况下,表达式((a % b) + b) % b 用于找出余数,其中结果余数的符号将类似于除数的符号,在本例中为 b。而表达式a%b可用于使用余数运算符求余数,其中a这样的被除数的符号被视为余数结果的符号。在以下情况下,操作 a % b 将返回 NaN −

  • 如果任何数字为 NaN

  • 如果除数或分母为

语法

以下是在 JavaScript 中使用模数运算符的语法 −

operand1 % operand2

它返回 operand1 除以 operand2 的整数余数。

让我们借助代码示例详细了解 JavaScript 中的模数运算符。

示例 1

您可以尝试运行以下代码来了解如何使用模数(%)运算符。

<html>
<body>
   <script>
      var a = 33;
      var b = 10;

      document.write("a % b = ");
      result = a % b;
      document.write(result);
   </script>
</body>
</html>

示例 2

下面的例子将解释模数运算符的行为及其对某些用户输入的结果 -

<html>
<body>
   <h2> Modulus Operator (%) in JavaScript </h2>
   <p> Enter the operands below −</p>
   <lebel> Operand1: </label>
   <input type = "number" id = "inp1" value = 3> <br> <br>
   <lebel> Operand2: </label>
   <input type = "number" id = "inp2" value = 2>
   <p> Click to see the result of Modulus Operator (%). </p>
   <p id = "result"></p>
   <button onclick = "display()"> Show Result </button>
   <script>
      var result = document.getElementById("result");
      function display() {
         var inp1 = document.getElementById("inp1");
         var val1 = Number(inp1.value);

         var inp2 = document.getElementById("inp2");
         var val2 = Number(inp2.value);
         var mod = ((val1 % val2) + val2) % val2;
         result.innerHTML = " <b> Result: " + mod + " </b> <br> ";
      }
   </script>
</body>
</html>

在上面的例子中,我们使用了表达式 ((val1 % val2) + val2) % val2; 来评估模数运算符的结果,该结果取决于除数或分母的符号,对于负除数值,结果将为负数,对于正值,结果将为正数。

让我们再看一个例子,我们将使用简单的余数运算符并查看其输出。

示例 3

下面的示例将说明余数运算符的用法,并帮助您更好地理解它 −

<html>
<body>
   <h2> Modulus Operator (%) in JavaScript </h2>
   <p> Enter the operands below −</p>
   <lebel> Operand1: </label>
   <input type = "number" id = "inp1" value = 13> <br> <br>
   <lebel> Operand2: </label>
   <input type = "number" id = "inp2" value = 9>
   <p> Click to see the result of Modulus Operator (%) of above two numbers. </p>
   <p id = "result"></p>
   <button onclick = "display()"> Show Result </button>
   <script>
      var result = document.getElementById("result");
      function display() {
         var inp1 = document.getElementById("inp1");
         var val1 = Number(inp1.value);
         var inp2 = document.getElementById("inp2");
         var val2 = Number(inp2.value);
         var rem = val1 % val2;
         result.innerHTML += "Result : " + rem ;
      }
   </script>
</body>
</html>

在上面的例子中,我们使用val1%val2表达式,使用余数运算符计算余数的值,并将结果存储在rem变量中,然后显示给用户。此运算符的结果值取决于被除数或分子的符号,如果被除数为正,则结果为正。否则,结果为负。

在本教程中,我们借助代码示例了解了模数运算符,我们实际实施它来尝试不同的被除数和除数值,并且可以交替测试被除数和除数的负值和正值。我们还借助示例了解了余数运算符,以区分余数和模数运算符。


相关文章