<! DOCTYPE html> <html> <head> <meta http-equiv = " content-type " content = " text / html " /> <meta name = " keywords " content = "La matriz se convierte en un árbol que es más fácil de analizar en la parte frontal Estructura similar " /> <meta name = " description " content = " La matriz se convierte en una estructura de árbol que es más fácil de analizar en la parte delantera " > <meta name = " author " content = " KG " /> <meta charset = " utf-8 "> <title> La matriz se convierte en una estructura de árbol que es más fácil de analizar en la parte delantera </ title> </ head> <body> <script> var data = [{ ' province ' : ' Zhejiang ' , ' city ' : ' Wenzhou ' , ' code ' : ' 10010 ' }, { ' provincia ' : ' Zhejiang ' , ' ciudad ': ' Hangzhou ' , ' código ' : ' 10011 ' }, { ' provincia ' : ' Anhui ' , ' ciudad ' : ' Hefei ' , ' código ' : ' 10012 ' }, { ' provincia ' : ' Anhui ' , ' ciudad ' : 'Ma Shan ' , ' código ' : ' 10013 ' }, { ' provincia ' : ' 浙江' , ' ciudad ' : ' 宁波' , ' código ' : ' 10014 ' }]; función toTree (datos) { var newData = [], hash = {}; para ( var i = 0 ; i <data.length; i ++) { if (! hash [data [i] .province]) { hash [data [i] .province] = { ' provincia ' : data [i] .province }; hash [data [i] .province] [ ' city ' ] = [{ ' name ' : data [i] .city, ' code ' : data [i] .code }]; newData.push (hash [datos [i] .province]); } más if (hash [data [i] .province] .province == data [i] .province) { hash [data [i] .province] [ ' ciudad ' ] .push ({ ' nombre ' : datos [i]. ciudad, ' código ' : datos [i] .code }) } } return newData; } console.log (toTree (datos)); </script> </body> </html>