JavaScript 中的模运算符 (%) 是什么?
在本教程中,我们将学习 JavaScript 中的模运算符。在某些语言中,模运算符也称为余数运算符。余数运算符和模运算符都用于获取整数除以另一个整数后的余数,但它们在余数符号方面有所不同,即除法后返回的余数是正数还是负数。
在表达式 a % b 中,a 称为被除数,而 b 称为除数。在模运算符的情况下,表达式 ((a % b) + b) % b 用于找出余数,其中结果余数的符号将类似于除数 b 的符号。而表达式 a % b 可以使用余数运算符来查找余数,其中被除数 a 的符号被视为余数结果的符号。以下情况中,运算 a % b 将返回 NaN:
如果任何一个数字为NaN。
如果除数或分母为零。
语法
以下是 JavaScript 中使用模运算符的语法:
operand1 % operand2
它返回操作数 1 除以操作数 2 的整数除法的余数。
让我们借助代码示例详细了解 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 变量中,然后将其显示给用户。此运算符的结果值将取决于被除数或分子的符号,如果被除数的值为正,则结果为正。否则,它将为负。
在本教程中,我们已经通过代码示例了解了模运算符,在代码示例中,我们实际上实现了它以尝试不同的被除数和除数的值,并且可以针对被除数和除数的负值和正值进行互换测试。我们还通过示例了解了余数运算符,以区分余数和模运算符。