var breadthTraversal = function(root) { let result = [] //定义保存广度遍历结果的数组 let queue = [root] //将二叉树放入队列 if (root) { //判断二叉树是否为空 while (queue.length) { //判断队列是否为空 let node = queue.shift() //从队列中取出一个结点 result.push(node.value) //将取出结点的值保存到数组 if (node.left) queue.push(node.left) //如果存在左子树,将左子树放入队列 if (node.right) queue.push(node.right) //如果存在右子树,将右子树放入队列 } } return result } breadthTraversal(tree);