關于過濾空節點的看法
利用循環得到有效的節點,即過濾無效節點,可以編寫函數備用。思路是這樣的:當type為1時即為元素節點,也就是有效節點,可以暫存起來,當type為3時就是文本節點了,也就是無效節點,但是這里有個情況是:節點集里確實有文本節點,你不可以視為無效值,所以需要判斷其value值的長度如果大于5,那么就是有效節點,為什么大于5呢?我們在編寫代碼的時候,經常要換行,那么這個換行符就被視為節點,且為文本節點,長度為5,這個我是在IE下檢驗的,其他瀏覽器大家可以試試。
關于節點集:返回節點集的方法很多,例如:getElementsByName(通過name獲得節點集),childNodes(通過訪問子節點獲得節點集)等!
for(let i=0;i<list.length;i++){
????//list指獲得的節點集
???? var n=list[i].nodeName; //節點名
???? var v=list[i].nodeValue; //節點值
???? var t=list[i].nodeType; //節點類型
???? if(t===1){//當為元素節點
???? ???? s+="Name:"+n+";Value:"+v+";Type"+t+"<br />";
???? //當為文本節點且內容長度>5時
???? }else if(t===3&&v.length>5){
???? ???? s+="Name:"+n+";Value:"+v+";Type"+t+"<br />";
???? }
注意:以上純屬個人測試,不做為學習依據,僅作為交流!
2019-05-05
優秀啊