function commonParentNode(oNode1, oNode2) { let n1 = oNode1, n2 = oNode2; //判断刚开始传入的是否为同一元素 if(n1.isSameNode(n2)) return n1; const map = new Map(); //若n1已经被存入过了,说明n1是共有的父节点 if(map.has(n1)) return n1; if(map.has(n2)) return n2; //将元素存入map map.set(n1,1); map.set(n2,1); return commonParentNode(n1.parentNode,n2.parentNode); }