jsは閉め切って木の形の配列を遍歴する方法を使います。
会社のプロジェクトをする時、1つの方法を書くことを要求して、方法のパラメーターは1つのメニューの配列の集合と1つのメニューのidで、メニューの配列のフォーマットは木の形のjsonで、下のようです:
[{"id":28,"text":" ","children":[
{"id":1,"text":" "},
{"id":2,"text":" "},
{"id":6,"text":" ","children":[
{"id":47,"text":" "}]},
{"id":11,"text":" ","children":[
{"id":24,"text":" "},
{"id":27,"text":" "}]},
{"id":22,"text":" "},
{"id":26,"text":" ","children":[
{"id":32,"text":" "},
{"id":33,"text":" "}}]
}] }]
現在提供されているメニューIDは32であり、対応する項目を見つけて、対応するメニュー名を返す方法は、まず配列を巡回します。項目のidが指定のidに等しい場合、メニュー名を取り出します。等しくない場合は、現在の項目にチルドレンがあるかどうかを見ます。チルドレンが空でなく、数が0より大きい場合は、チルドレンを遍歴します。チルドレンを巡回する方法を匿名の方法において、このようにして常に匿名の方法で自身に再帰し、同じ名前のIDがあるとループが飛び出し、メインメソッドから得られたメニュー名を返します。コードは以下の通りです。