Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 合并querySelectorAll返回的两个元素列表_Javascript - Fatal编程技术网

Javascript 合并querySelectorAll返回的两个元素列表

Javascript 合并querySelectorAll返回的两个元素列表,javascript,Javascript,我想合并document.querySelectorAll返回的两个元素列表 以下是我尝试过的,但并不好: var ca = document.querySelectorAll(".classA"); ca = ca + document.querySelectorAll(".classB"); 我需要合并元素列表,因为我只需要在FOR循环中使用一个列表: for(var i=0; i<ca.length; i++) console.log(ca[i].tagName); fo

我想合并document.querySelectorAll返回的两个元素列表

以下是我尝试过的,但并不好:

var ca = document.querySelectorAll(".classA");
    ca = ca + document.querySelectorAll(".classB");
我需要合并元素列表,因为我只需要在FOR循环中使用一个列表:

for(var i=0; i<ca.length; i++) console.log(ca[i].tagName);
for(var i=0;i用于将节点列表转换为数组并合并两个数组:

var ca = Array.prototype.slice.call(document.querySelectorAll(".classA")).concat(Array.prototype.slice.call(document.querySelectorAll(".classB")));
你也可以这样做

var ca = document.querySelectorAll(".classA, .classB");

“但这需要FF 3.1+、Safari 3.1+或IE8+”无论是使用逗号连接选择器还是单独调用
querySelectorAll(),浏览器支持都没有区别
。实际上,对于连接的选择器,输出顺序是每个元素的文档顺序,而两个合并数组的顺序是第一个数组中的项目,然后是第二个数组中的项目。区别很小,但确实存在,并且可以根据您的使用情况产生不同的结果。