querySelectorAll和getElementsByClassName的认识
1. querySelectorAll(name)
返回一个 NodeList
表示元素的列表(类数组对象),把当前的元素作为根与指定的选择器组相匹配。
2. getElementsByClassName(name)
返回一个包含了所有指定类名的子元素的类数组对象(HTMLCollection
)。当在document
对象上调用时,会搜索整个DOM
文档,包含根节点。
比较点:
结果
querySelectorAll
返回的是静态结果,不会随文档变化而变化。getElementsByClassName
返回的是动态结果,会及时升级文档的变化。参数
name
:querySelectorAll
的name
由逗号连接的包含一个或者多个CSS
选择器的字符串。getElementsByClassName
的参数name
可包含一或者多个类名,元素必需同时包括这些类名。规范
querySelectorAll
属于W3C
中的Selectors API
规范;getElementsByClassName
属于W3C
的DOM
规范。执行效率
单从API
执行效率上,getElementsByClassName
要比querySelectorAll
快。但是我们使用上差异微乎其微,具体选用哪个API
要看使用场景。
延申:NodeList和HTMLCollection的区别
两张图基本上就明白了:
区别
detail
详见 HTMLCollection与NodeList
说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » querySelectorAll和getElementsByClassName的认识
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » querySelectorAll和getElementsByClassName的认识