ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript のモジュラス演算子が負の数値で予期しない結果を生成するのはなぜですか?
負の数値に対する JavaScript の剰余演算子の動作
JavaScript では、剰余演算子 (%) は除算演算の剰余を計算します。ただし、負の被除数値の場合、数学的規則や他のプログラミング言語とは動作が異なります。
負の被除数に対して剰余演算を実行すると、JavaScript は負の剰余を返しますが、数学的計算や他のほとんどのプログラミング言語では正の剰余が返されます。 1つ。これは次の例で証明できます:
問題
JavaScript で負の数値を含むモジュラス演算の正しい結果を取得するには、次のカスタム関数を使用できます。
Number.prototype.mod = function (n) { "use strict"; return ((this % n) + n) % n; };
この関数は、負の被除数に適用されると、返される剰余が正であることを保証します。例:
console.log((-13).mod(64)); // Output: 51 (correct result)
以上がJavaScript のモジュラス演算子が負の数値で予期しない結果を生成するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。