2017-07-22 15 views
-1

私は、次があります。モジュラス演算子はjavascriptで期待どおりに動作しませんか?

-1 mod 5 

私は4を得ることを期待。

しかし、JS(-1 % 5)では、私は-1を得ています。

私は間違っていますか?

+1

あなたはどのようなロジックで4を得ると思いますか? –

+0

@torazaburo Googleロジック:https://www.google.com/search?q=-1+mod+5&rlz=1C1CHZL_enUS749US749&oq=-1+mod+5&aqs=chrome.0.69i59.2215j0j1&sourceid=chrome&ie=UTF-8 – SB2055

+1

-1は4(モジュロ5)に等しい。 – Pointy

答えて

1

modは、分割数で除算すると余りです。

数学-1%5 = -1で、Jsは期待どおりに動作しています。

あなたは間違ったことはしていません。正の数(差)を求めたい場合は、除算値を結果に加えます。

var result = (-1 % 5) + 5; 

モジュールの前または後に番号を追加する場所は関係ありません。その純粋な数学。

+1

https://www.google.com/searchを強くお勧めします。 q = -1 + mod + 5&rlz = 1C1CHZL_enUS749US749&oq = -1 + mod + 5&aqs = chrome.0.69i59.2215j0j1&sourceid = chrome&ie = UTF-8 – SB2055