树的先序遍历

export function preOrderTraversal(nodes, callback = () => { }) {
  // 先确保传入数据数组
if (!Array.isArray(nodes)) return for (const node of nodes) { const ret = callback(node) if (ret === false) { break } else if (ret === true) { continue } node?.children?.length && preOrderTraversal(node.children, callback) } }

使用方法:

preOrderTraversal(cols, col => {
     // TODO ...        
 })

 

posted @ 2023-03-01 16:42  ^柒  阅读(25)  评论(0)    收藏  举报