一个javaScript对象不具有length属性,但是querySelectorAll的返回值具有length属性,因此它指示是一个数组,但是如果我们通过Array.isArray()对其进行检查,则它返回false证明它不是数组那是什么类型的数据呢?
var obj1 = {
fname: "Mirajul",
lname: "Momin",
age: 24
};
console.log(obj1.length);
var paraList = document.querySelectorAll("p");
console.log(paraList.length);
console.log(Array.isArray(paraList));
<p>This is paragraph one</p>
<p>This is paragraph two</p>
<p>This is paragraph three</p>
<p>This is paragraph four</p>
答案 0 :(得分:1)
Element方法
querySelectorAll()
返回一个静态(非实时)NodeList,该NodeList表示与指定选择器组匹配的文档元素列表。
有关差异,请访问:Difference between HTMLCollection, NodeLists, and arrays of objects
您可以使用Spread syntax将其作为数组:
List<DateRange> listToBeSorted = new ArrayList<DateRange>();
static private class DateRange
{
private int startRange ;
private int endRange ;
public int getStartRange() {
return startRange;
}
public void setStartRange(int startRange) {
this.startRange = startRange;
}
public int getEndRange() {
return endRange;
}
public void setEndRange(int endRange) {
this.endRange = endRange;
}
}
var obj1 = {
fname: "Mirajul",
lname: "Momin",
age: 24
};
console.log(obj1.length);
var paraList = [...document.querySelectorAll("p")];
console.log(paraList.length);
console.log(Array.isArray(paraList));
答案 1 :(得分:0)
根据文档,“非活动Element
包含一个NodeList
对象,每个对象至少与指定的选择器之一匹配;如果不匹配,则为空graph = {("A","A"): 3, ("A","B"): 4, ("A","C"): 1}
。 “
您可以在https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelectorAll
上查看有关此问题的更多信息答案 2 :(得分:0)
querySelectorAll()返回一个对象数组,其元素与指定的选择器组匹配。
.isArray()将返回false,因为它返回的对象不是数组
语法:
var elms = document.querySelectorAll('selectors');
例如,获取一个数组,该数组包含具有class ='sites'的LI标签的内容,以及具有id ='dv1'的元素内包含class ='note'的标签,然后显示其内容:
阅读博客以更好地了解querySelectorAll
https://coursesweb.net/javascript/queryselector-queryselectorall