//将childNodes返回的数据转化为数组的方法 function convertToArray(nodes){ var array=null; try{ array=Array.prototype.slice.call(nodes,0); }catch(ex){ array=new Array(); for(var i=0,len=nodes.length;i<len;i++){ array.push(nodes[i]); } } return array; } //筛选节点的方法 function getElementList(arr,value){ var arrList=new Array(); for(var i=0,len=arr.length;i<len;i++){ if(arr[i].nodeType==value){ arrList.push(arr[i]); } } return arrList; }
Chaque nœud possède un attribut childNodes, qui contient l'objet NodeList. NodeList est un objet de type tableau utilisé pour enregistrer un ensemble ordonné de nœuds accessibles par position. Cependant, tout le monde doit faire attention au fait que même si nous pouvons accéder à l'objet via des crochets et que NodeList possède également la propriété length, il ne s'agit pas d'une instance de Array.
Bien sûr, nous pouvons également accéder aux nœuds de la NodeList via la méthode item(), tout comme en utilisant des crochets. Il n'y a rien de mal dans les deux cas, et les crochets sont préférés par les développeurs en raison de leur simplicité.
Ici, l'auteur recommande toujours la méthode ci-dessus pour convertir NodeList en tableau, mais comme la méthode Array.prototypr.slice.call(soneNode.childNodes,0); NodeList ne peut être converti en un tableau dimensionnel que par énumération. try-catch détecte l'erreur et crée le tableau manuellement.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!