我有幾個函數使用下面給出的for循環。將for循環的部分放入javascript函數中
function startClaw(dir){
var readCount = 0;
for(var isRead in qdata){
readCount++;
if(qdata[isRead]['reading'] == true){
return;
}else if(readCount == 5){
isAnimating = $("#claw").is(':animated');
if(!isAnimating){// prevents multiple clicks during animation
if(isMoving || isDropping){ return; }
MCI = setInterval(function(){ moveClaw(dir); },10);
//console.log("startClaw:" + dir);
stopSwingClaw();
}
}
}
}
//.................................................................
function dropClaw(){
var readCount = 0;
for(var isRead in qdata){
readCount++;
if(qdata[isRead]['reading'] == true){
return;
}else if(readCount == 5){
if(isDropping){ return; } //prevent multiple clicks
stopSwingClaw();
isDropping = true;
MCI = setInterval(moveDown,20); //start heartbeat
}
}
}
else if
聲明中的所有內容在各種函數中都不相同。我想知道是否有任何方法將else if
外部的for循環的「部分」放入它自己的函數中。我覺得我已經看到了這一點,或者很早以前就已經這樣做了,但它逃脫了我,我找不到任何例子。感謝大家!
當然,但這取決於你在這些不同的功能中實際需要做什麼。 –
剛剛意識到我可能會抓住使用'for-in'循環的機會。它有目的地迭代數組對象,而不是按順序運行。在我的代碼中使用它的情況下很好。 – Jester
這裏沒有足夠的知識 – charlietfl