JS如何实现水平遍历和嵌套递归操作

  介绍

这篇文章主要介绍了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如何实现水平遍历和嵌套递归操作”这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

JS如何实现水平遍历和嵌套递归操作