免费使用的招生小程序_JS完成水平遍历和嵌套递

阅读  ·  发布日期 2021-01-07 12:00  ·  admin
JS实现水平遍历和嵌套递归操作示例       这篇文章主要介绍了JS实现水平遍历和嵌套递归操作,结合实例形式分析了javascript遍历与递归相关操作技巧,需要的朋友可以参考下

本文实例讲述了JS实现水平遍历和嵌套递归操作。分享给大家供大家参考,具体如下:

程序中存在着一些有意思的逻辑,比如多层嵌套可以用递归遍历,比如同层的if else可以用数组遍历。

下面举例说明,多层嵌套的if else想要递归遍历需要写成下面的形式,以及用特定形式的递归遍历:

多层嵌套的if else转写成的函数

let p1 = false,
p2 = true,
p3 = false;
let test = function() {
 if (p1) {
 return '终止1';
 } else {
 return function() {
 if (p2) {
 return '终止2'
 } else {
 return function() {
 if (p3) {
 return '终止3'

对多层嵌套的遍历:

function yunxing1() {
 while (test()) {
 test = test()
 if (typeof test === 'string') {
 alert(test)
 return '终止'
yunxing1()

同层多个if else改写的函数以及遍历方法

let i = 1,
a = 2,
b = 3;
function simpleVlidate() {
 let varr = [];
 varr.push(() = {
 if (i === 1) {
 return '不能等于1'
 varr.push(() = {
 if (a === 2) {
 return '不能等于2'
 varr.push(() = {
 if (b === 3) {
 return '不能等于3'
 return varr
let arrs = simpleVlidate();
function yunxing() {
 for (let i = 0, fn; fn = arrs[i++];) {
 if (fn()) {
 alert(fn())
 return;
 console.log()
yunxing();

以上,总结的有意思的逻辑,也是可以简化代码的方法。这样的逻辑还有很多………………

凡科抠图:这里再为大家推荐一款JS数组遍历方式分析对比工具供大家参考:

在线JS常见遍历方式性能分析比较工具:

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》及《》

希望本文所述对大家JavaScript程序设计有所帮助。