Maison >interface Web >js tutoriel >méthode js pour parcourir un tableau arborescent à l'aide des compétences Closure_Javascript

méthode js pour parcourir un tableau arborescent à l'aide des compétences Closure_Javascript

WBOY
WBOYoriginal
2016-05-16 16:55:101334parcourir

Lorsque vous réalisez un projet d'entreprise, vous devez écrire une méthode. Les paramètres de la méthode sont une collection de tableaux de menus et un identifiant de menu. Le format du tableau de menus est un arbre json, comme indiqué ci-dessous :
<.>

Copier le code Le code est le suivant :
[{"id":28,"text":"Informations sur l'entreprise" ,"enfants":[
{"id":1,"text":"Culture d'entreprise"},

{"id":2,"text":"Plan de recrutement"},

{"id":6,"text":"Actualités de l'entreprise","children":[

{"id":47,"text":"Actualités de l'industrie"}]},

               {"id":11,"text":"Actualités internes","children":[

{"id":24,"text":"Informations administratives"},

                                                                                                                                                                                                                                                {"id":27,"text":"Instructions générales"}]},

{"id":22,"text":"Contactez-nous"},

{"id":26,"text":"Affichage du produit","children":[

                                                                                                                                                                                                                                                           {"id":32,"text":"produits électriques"},

{"id":33,"text":"Présentation des accessoires"}}]

}] }]

L'identifiant de menu donné maintenant est 32. Il est nécessaire de trouver l'élément correspondant et de renvoyer le nom du menu correspondant. La méthode consiste à parcourir d'abord le tableau. Lorsque l'identifiant de l'élément est égal à l'identifiant spécifié, prenez. dehors le nom du menu. S'il n'est pas égal à Ensuite, voyez si l'élément actuel a des enfants. Si les enfants ne sont pas vides et que le nombre est supérieur à 0, alors parcourez les enfants. À ce stade, vous devez utiliser la fermeture de. javascript et placez la méthode de parcours des enfants dans une méthode anonyme, de sorte qu'elle soit toujours dans la méthode anonyme Recurse elle-même. Lorsque vous rencontrez un identifiant du même nom, sortez de la boucle et renvoyez le nom de menu obtenu à partir du menu principal. méthode. Le code est le suivant :


Copier le code Le code est le suivant :
fonction getMenuName(menus). , id) {
var name = "" ;
for (var i = 0; i < menus.length; i ) {
if (menus[i].id == id) {
nom = menus[i].text;
break;
}
else {
(function (function ( ) {
var m = arguments[0];
var menuid = arguments[1];
for (var j = 0; j < m.length; j ) {
if (m [j].id == menuid) {
            name = m[ j].text;
                                                                           .children.length > 0) {
                                                                                                                                                                                                                               enfants, id); > >
retourner le nom ;
}

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn