JavaScript のモジュロ演算子 %
    
    Harshit Jindal
    2023年10月12日
    
    JavaScript
    JavaScript Operator
    
 
このチュートリアルでは、JavaScript でモジュロ演算子%を使用する方法を説明します。
JavaScript の剰余演算子%
    
ある数値(配当)を別の数値(除数)で割ったときの余りが得られます。この演算子は、目的が異なるため、他の言語のモジュロ演算子と同じではありません。それらの結果は、正の被除数についてのみ同じですが、負の被除数 a があり、その上にモジュロ演算子が適用されている場合、結果は完全に異なります。JavaScript の剰余演算子を使用して式 ( (a % n) + n) % n によって得られた結果は、a % n のモジュロ演算子を使用して得られた結果と同じです。
JavaScript で剰余演算子%を使用する例
正の配当を伴うモジュロ
1 % -2   //  1
2 % 3    //  2
5.5 % 2  // 1.5
12 % 5   //  2
1 % 2    //  1
負の配当の余り
-12 % 5      // -2
    - 1 % 2  // -1
    - 4 % 2  // -0
NaN の残り
NaN % 2  // NaN
無限の残り
Infinity % 2         // NaN
Infinity % 0         // NaN
Infinity % Infinity  // NaN
アプリケーション
数は奇数ですか、それとも偶数ですか
整数が 2 で割り切れるかどうかをチェックすることで、整数が偶数であるかどうかをチェックできます。モジュロ演算子の戻り値を使用できます。0 の場合、数値が偶数であることを意味します。
function isEven(n) {
  return n % 2 === 0;
}
isEven(6);  // true
isEven(3);  // false
数字の端数処理
これは、n % 1 を計算するだけで実行できます。
function getFractionalPart(n) {
  return n % 1;
}
getFractionalPart(2.5);  // 0.5
分を時間に変換する
分数を表す数値 n が与えられ、それを時間と分に変換したい場合は、モジュロ演算子を使用できます。
const minutesToHoursAndMinutes = n =>
    ({hours: Math.floor(n / 60), minutes: n % 60});
minutesToHoursAndMinutes(123);  // { hours: 2, minutes: 3 }
        チュートリアルを楽しんでいますか? <a href="https://www.youtube.com/@delftstack/?sub_confirmation=1" style="color: #a94442; font-weight: bold; text-decoration: underline;">DelftStackをチャンネル登録</a> して、高品質な動画ガイドをさらに制作するためのサポートをお願いします。 Subscribe
    
著者: Harshit Jindal
    Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.
LinkedIn