当前位置: 首页 > Web前端 > JavaScript

Node.contains()返回一个布尔值,表示传入的节点是否是该节点的后代节点

时间:2023-03-27 16:34:31 JavaScript

前题介绍:刷题记录:题目是找到两个节点最近的公共父节点,可以包括节点本身。思路是先固定一个元素,递归查找这个元素的所有父元素都存在于数组中,递归查找元素2的父元素是否在这个数组中,但是想到实现起来太麻烦,而成绩不是很好,看了看题库里其他高手的分析过程,真是打击了我的自尊心。我觉得还是要多学,多看,多懂。或许一个简单的API就可以解决你的问题,但是如果你不知道,你就是解决不了问题,或者你要比别人多走很多弯路,所以一定要尽可能多的去学习才能搞定接触新知识//题目:找到两个节点最近的公共父节点,可以包括节点本身(前提是node1和node2不会是同一个元素)functioncommonParentNode(oNode1,oNode2){if(oNode1.contains(oNode2)){返回oNode1;}else{returncommonParentNode(oNode1.parentNode,oNode2)}}分析:containssoNode1.contains(otherNode)的结果是布尔值,表示传入节点是否为本节点的后代节点otherNode如果是后代则返回trueoNode1的节点或oNode1本身,否则返回false;