欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

extjs 遞歸 得到 json 菜單

江奕云1年前7瀏覽0評論

ExtJS是一種流行的JavaScript框架,它可以幫助開發者快速搭建具有豐富交互性的Web應用程序。這里介紹了如何使用遞歸來獲取一個多級JSON菜單。

// 定義一個JSON菜單
var menu = {
text: '主菜單',
items: [{
text: '子菜單1',
items: [{
text: '子菜單1-1',
items: [{
text: '子菜單1-1-1'
}, {
text: '子菜單1-1-2'
}]
}, {
text: '子菜單1-2'
}]
}, {
text: '子菜單2',
items: [{
text: '子菜單2-1'
}, {
text: '子菜單2-2'
}]
}]
};
// 定義遞歸函數
function getItems(menu) {
var items = []; // 定義一個空數組來存儲所有菜單項
for (var i = 0; i< menu.items.length; i++) {
var item = menu.items[i];
if (item.items) { // 如果該項包含子菜單項,則遞歸調用getItems函數
items = items.concat(getItems(item));
}
else { // 如果該項沒有子菜單項,則把它添加到items數組中
items.push({
text: item.text
});
}
}
return items; // 返回所有菜單項的列表
}
// 調用getItems函數并輸出結果
console.log(getItems(menu));

以上代碼中,我們首先定義了一個多級JSON菜單對象,然后定義了一個遞歸函數getItems來遍歷該菜單,并獲取其中所有的菜單項。如果一個菜單項中包含子菜單項,則遞歸調用getItems函數來獲取其所有的菜單項,然后將其添加到items數組中。如果該菜單項不包含子菜單項,則直接把它添加到items數組中。最后,該函數會返回一個包含所有菜單項的列表。

通過使用遞歸函數getItems,我們可以方便地獲取多級JSON菜單中所有的菜單項。在開發使用ExtJS框架的Web應用程序時,這是一個非常實用的技巧。