js获取当前元素所有子级元素的相关问题

以ul,li为例,获取ul下所有li标签


如下图所示,获取到的是HTMLCollection格式的,这种格式不方便我们操作,所以我们需要将其转换成数组

js获取当前元素所有子级元素的相关问题_第1张图片

HTMLCollection --> Array 三种常用方法
es5方法(低版本浏览器使用):var arr = Array.prototype.slice.call(htmlCollection);

es6方法1(可用于IE10+):let arr = [...htmlCollection]

es6方法2(可用于IE10+):let arry = Array.from(htmlCollection)
当然,如果十分不幸的,你需要兼容IE8等旧浏览器或更早版本,我们需要使用一个更基本的兼容性函数,如
function toArr(arr){
    for(var i = 0, a = []; i < arr.length; i++)
    a.push(arr[i]);
    return a;
}
转换成数组之后

js获取当前元素所有子级元素的相关问题_第2张图片

你可能感兴趣的:(js获取当前元素所有子级元素的相关问题)