Home  >  Article  >  Web Front-end  >  How to write JS when you need to traverse irregular multi-dimensional arrays

How to write JS when you need to traverse irregular multi-dimensional arrays

php中世界最好的语言
php中世界最好的语言Original
2018-05-03 16:29:201353browse

This time I will show you how to write JS when you need to traverse irregular multi-dimensional arrays. What are the precautions ? Here are the practical cases. Let’s take a look. one time.

Go directly to the text:

Sometimes when we process data, we may encounter some irregularities (unpredictable data structures), so how do we perform traversal operations when we get this kind of data? For example:

var data= {
    a: { one: 1, two: 2, three: {four:'2',five:'4'} },
    b: { six: 4, seven: 5, eight: 6 },
    c: { nine: 7, ten: 8}
}
For example, the data above (the actual situation is that this data will have various unpredictable changes), if you want to traverse this kind of data, you cannot traverse it with a simple for in.

In fact, this kind of data traversal is also simple. Using the recursive method can perfectly solve this problem.

The code is as follows:

function traverse(obj) {
    for (var a in obj) {
      if (typeof(obj[a]) == "object") {
        traverse(obj[a]); //递归遍历
      } else {
        console.log(a + "=" + obj[a]); //如果是值就显示
      }
    }
}
traverse(data)
Finally, we only need to call this method to When obj is passed in, the entire data is successfully traversed

The results of this example are as follows:

I believe you have mastered the method after reading the case in this article, and more How exciting, please pay attention to other related articles on php Chinese website!

Recommended reading:

js verification of birth date regular expression

Detailed explanation of the use of computed in Vue.js

The above is the detailed content of How to write JS when you need to traverse irregular multi-dimensional arrays. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn