原生寫一個一鍵獲取所有DOM元素的方法


一天挺一個朋友去面試要做一個獲取dom元素到數組中

主要用到一個遞歸算法,通過節點的childNodes屬性--代碼如下:

function getAllNode() {
	var nodes = document.childNodes;
	var arr_all_ele = [];
	function returnNode(arr_nodes, arr_all_ele) {
		for(var i=0; i<arr_nodes.length; i++) {
			var parentNode = arr_nodes[i];
			arr_all_ele.push(parentNode);
			var childNodes = parentNode.childNodes;
			if(childNodes.length != 0) {
				returnNode(childNodes, arr_all_ele);
			}
		}
	}
	returnNode(document.childNodes, arr_all_ele);
	return arr_all_ele;
}

返回結果是所有dom到一個數組中:

![](https://images2018.cnblogs.com/blog/1244681/201807/1244681-20180726090031658-2049325683.png)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM