如何優(yōu)化多層嵌套的循環(huán)和條件判斷代碼?

科技 未結 5 1752
開在指間的玫瑰
開在指間的玫瑰 2023-06-11 07:29

邏輯稍微復雜點,就很容易出現(xiàn)for循環(huán)中嵌套if語句。比如:

menus:[{ id:"index", title:"首頁", isVisible:true },{ id:"apps", title:"應用中心", isVisible:true, children:[{ id:"index", title:"首頁", isVisible:true } ] } ]

這段代碼先遍歷menus數(shù)組,然后判斷是否顯示,在判斷是否有二級欄目,再遍歷二級欄目。。簡化版代碼:

for(var i=0;i<menus.length;i++){ if(menus[i].isVisible == true){ dosomething.... if(menus[i].children){ for(var j=0;j<menus[i].children.length;j++){ if(menus[i].children[j].isVisible == true){ dosomething..... } } } } }

有些代碼檢測工具是不贊同多層for/if 等嵌套的,最多三層,但這段代碼都有五層嵌套了。。 求教各位大神,這類代碼應該怎么優(yōu)化? 感謝感謝?。?/p>

5條回答
提交回復