检查一个数字是否是另一个数字的倍数
Check if one Number is Multiple of another in JavaScript
使用模运算%
符检查一个数字是否是另一个数字的倍数。
当一个数字除以另一个数字时,运算符返回余数。只有当第一个数是第二个数的倍数时,余数才为零。
索引.js
const num1 = 15; const num2 = 5; const remainder = num1 % num2; console.log(remainder); // 👉️ 0 if (remainder === 0) { // ✅ This runs console.log('👉️ num1 is a multiple of num2'); } else { console.log('⛔️ num1 is NOT a multiple of num2'); }
我们使用
模
运算符来获得一个数除以另一个数的余数。
如果第一个数除以第二个数后的余数是,则第一个数是第二个数的倍数。
0
以下是使用模运算符的更多示例%
。
索引.js
console.log(13 % 5); // 👉️ 3 console.log(12 % 5); // 👉️ 2 console.log(11 % 5); // 👉️ 1 console.log(10 % 5); // 👉️ 0
该数10
是 的倍数5
,所以除法的余数是0
。
模%
运算符总是取第一个数字(被除数)的符号。
索引.js
console.log(-13 % 5); // 👉️ -3 console.log(12 % -5); // 👉️ 2
您可能想知道如果我们得到剩余的-0
.
条件是否会if
失败,因为我们只检查0
.
索引.js
console.log(-15 % 3); // 👉️ -0
但是,在 JavaScript 中0
等于,-0
所以我们的条件仍然有效。
索引.js
console.log(0 === -0); // 👉️ true
创建一个可重用的函数
如果您需要经常检查一个数字是否是另一个数字的倍数,请将逻辑提取到可重用的函数中。
索引.js
function checkIfMultiple(num1, num2) { return num1 % num2 === 0; } console.log(checkIfMultiple(15, 5)); // 👉️ true console.log(checkIfMultiple(15, 4)); // 👉️ false console.log(checkIfMultiple(15, 3)); // 👉️ true if (checkIfMultiple(15, 5)) { // ✅ This runs console.log('👉️ num1 is a multiple of num2'); } else { console.log('⛔️ num1 is NOT a multiple of num2'); }
该checkIfMultiple()
函数将 2 个数字作为参数,并检查第一个数字是否是第二个数字的倍数。
检查一个数是否不是另一个数的倍数
如果您需要检查一个数字是否不是另一个数字的倍数,请在使用模运算符后检查是否有余数。
索引.js
function checkIfNotMultiple(num1, num2) { return num1 % num2 !== 0; } console.log(checkIfNotMultiple(15, 5)); // 👉️ false console.log(checkIfNotMultiple(15, 4)); // 👉️ true console.log(checkIfNotMultiple(15, 3)); // 👉️ false if (checkIfNotMultiple(15, 5)) { console.log('⛔️ num1 is NOT a multiple of num2'); } else { // ✅ This runs console.log('👉️ num1 is a multiple of num2'); }
该checkIfNotMultiple()
函数将 2 个数字作为参数,并检查第一个数字是否不是第二个数字的倍数。