我想每隔3次觸發一次事件。每隔3次觸發一次
for (i = 0; i < 5000; i++) {
// When i == 3, == 6, == 9 etc.
if() {
trigger();
}
}
我無法弄清楚如何表示它的代碼,我的大腦被卡住。
除非我寫:if i == 3
if i == 6 etc.
但由於我是無限的,我可以寫幾百萬的這些。
我想每隔3次觸發一次事件。每隔3次觸發一次
for (i = 0; i < 5000; i++) {
// When i == 3, == 6, == 9 etc.
if() {
trigger();
}
}
我無法弄清楚如何表示它的代碼,我的大腦被卡住。
除非我寫:if i == 3
if i == 6 etc.
但由於我是無限的,我可以寫幾百萬的這些。
使用模運算符:當i
爲0,3,6
if (i % 3 === 0) ...
條件爲真,...
哈哈,你其實是正確的調用模塊的功能,這就是爲什麼我把我的編輯回滾。從技術上講,它是使用模函數的餘數運算符。 – j08691
你可以...
i
3 ,而不是1Modulo
檢查所以
for (i = 0; i < 5000; i=i+3) {
...
}
或者
for (i = 0; i < 5000; i++) {
// When i == 3, == 6, == 9 etc.
if (i % 3 == 0) {
trigger();
}
}
值得注意的是,如果循環中還有其他東西,這兩種解決方案會有不同的結果。 –
有人上個月甚至有完全相同的問題:http://stackoverflow.com/q/34660817/218196。 –
i ++是你在大多數通用循環中看到的東西,但它實際上可以是你想要的任何東西。 'i ++','i - ','i + =#'或'i - =#'。最後兩個是對'i = i +#'或'i = i-#'編碼的簡寫。「 – JoeL
沒有必要對smartasses進行downvote,你會從中得到一些樂趣嗎? –