介绍
这篇文章主要介绍了JS如何实现水平遍历和嵌套递归操作,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。
具体如下:
程序中存在着一些有意思的逻辑,比如多层嵌套可以用递归遍历,比如同层的如果还可以用数组遍历。
下面举例说明,多层嵌套的,如果还想要递归遍历需要写成下面的形式,以及用特定形式的递归遍历:
多层嵌套的如果转其他写成的函数
let p1 =,假的, p2 =,真的, 时间=p3 假; let test =,()函数,{ ,,,if (p1), { ,,,,,return & # 39;终止1 & # 39;; ,,,},{else ,,,,,return 函数(),{ ,,,,,,,if (p2), { ,,,,,,,,,return & # 39;终止2 & # 39; ,,,,,,,},{else ,,,,,,,,,return 函数(),{ ,,,,,,,,,,,if (p3), { ,,,,,,,,,,,,,return & # 39;终止3 & # 39; ,,,,,,,,,,,} ,,,,,,,,,} ,,,,,,,} ,,,,,} ,,,} }
对多层嵌套的遍历:
function yunxing1 (), { ,,,while (测试()),{ ,,,,,test =,测试() ,,,,,if (typeof test ===, & # 39;字符串# 39;),{ ,,,,,,,警报(测试) ,,,,,,,return & # 39;终止& # 39; ,,,,,} ,,,} } yunxing1 ()
同层多个如果改其他写的函数以及遍历方法
let 小姐:=,1, 时间=a 2, 时间=b 3; function simpleVlidate (), { ,,,let varr =, []; ,,,varr.push((),=祝辞,{ ,,,,,if (小姐:===,1),{ ,,,,,,,return & # 39;不能等于1 & # 39; ,,,,,} ,,,}) ,,,varr.push((),=祝辞,{ ,,,,,if (===a 2), { ,,,,,,,return & # 39;不能等于2 & # 39; ,,,,,} ,,,}) ,,,varr.push((),=祝辞,{ ,,,,,if (===b 3), { ,,,,,,,return & # 39;不能等于3 & # 39; ,,,,,} ,,,}) ,,,return varr } let arrs =, simpleVlidate (); function yunxing (), { ,,,for (let 小姐:=,0,,fn;, fn =, arr (+ +),), { ,,,,,if (fn ()), { ,,,,,,,警报(fn ()) ,,,,,,,返回; ,,,,,} ,,,} ,,,console.log (343433333333) } yunxing ();
感谢你能够认真阅读完这篇文章,希望小编分享的“JS如何实现水平遍历和嵌套递归操作”这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!