2013-02-06 44 views
-1

我想要一些JavaScript代碼轉換成Java的,但我不知道是什麼兩個數值變量之間的%字符的作用:JavaScript在JavaScript中做了什麼?

testvalue = somevalue%anothervalue; 

這是什麼意思,還是有相同的語句是在Java中呢?

我也有這個在JavaScript:

if(somevalue%2 == 1){ 
    } 

是什麼意思%2這裏?

+1

Java!= javascript – jlordo

+1

@jlordo,似乎他正在翻譯從一個到另一個。我不認爲有任何混淆。 – jn1kk

+0

Modulo運算符。 – nhahtdh

回答

5

提醒這是modulus operator

這將返回「第一個操作數取模第二個操作數」,這是當您減去(或添加)第二個操作數off/to的第一個操作數時的餘數,以儘可能接近0.

下面是一個例子:

5 % 2 == 1 (5 = 2*2 +1) 
6 % 2 == 0 (6 = 2*3 +0) 
12 % 5 == 2 (12 = 5*2 +2) 
-5 % 2 == -1 (-5 = 2*-2 -1) 
-6 % 2 == 0 (-6 = 2*-3 -0) 
-12 % 5 == -2 (-12 = 5*-2 -2) 
//       ^That's the result of the modulo.  
+0

你的描述對負數沒有意義。 – Alex

+0

@Alex:並且「Division餘額」呢? '5/2 == 2.5'。其他答案並不比我的模糊。任何方式,編輯。 – Cerbrus

0

模數運算符不是JavaScript特定的。它返回兩個數字的其餘部分。

0

這是模運算符。它爲您提供somevalue/anothervalue的其餘部分,即10%4 === 2

0

它是Java和JavaScript以及其他編程語言中的模運算符。

它返回一個除法的餘數,例如,

5 % 2 = 1 
3

這是modulus運營商。模數運算符對這兩個值執行除法,並將餘數作爲輸出。

例如:

var testValue = 5 % 3; 

測試值輸出將是2

+0

鏈接已損壞。 –

+0

@PeterMortensen我已經更新了鏈接,並且與您的代表一起,您也可以輕鬆完成該任務。 –

0

它執行一個模測算。那就是:確定divison reminder。是的,Java爲此使用相同的語法。

實施例:5%3 = 2

由於3進入5一次,並且存在2

0
X%5 

裝置的其餘的X/5因此,如果x = 12,則x%5如果要增加一個號碼在一個循環中最多= 2

<button onclick="incX();">increase up to 5</button> 
<script type="text/javascript"> 
    var x=0; 
    function incX(){ 
     x%=5; 
     x++; 
     alert("X = "+x); 
    } 
</script>