选择器是CSS的强大工具,早期通过getElementById和getElementsByTagName获取元素在某些场景下使用不便。后来DOM引入了Selector API标准,包含querySelector和querySelectorAll两个方法,利用CSS选择器匹配页面元素。querySelector用于查找匹配的第一个元素,可应用于Document和Element实例,接收CSS选择器字符串,返回匹配的HTML元素或null。语法如下:Document实例调用用于获取整个页面的匹配元素,示例如下:Element实例调用则针对该元素子树内匹配的元素,例如:Element实例调用等效于Document实例调用,仅需修改选择器字符串参数,使得代码更加简洁。在确定元素业务场景下,Element实例调用更加便捷。querySelectorAll方法类似于querySelector,但返回所有匹配的元素,类型为NodeList。示例如下:遍历NodeList常用for、for of、forEach等方法。使用for in时会遍历原型链上的方法,如entries、forEach等。NodeList为快照而非实时数据,若在页面添加新元素,NodeList长度不变。对比getElementsByClassName,获取的对象为HTMLCollection类型,随文档流变化而变化。总结,querySelector和querySelectorAll提供了通过CSS选择器获取页面元素的功能,前者返回匹配的第一个元素,后者返回所有匹配元素,NodeList类型。在实际应用中需注意遍历方式和实时数据处理。