javascript - 返回的 [object HTMLCollection] 和 [object HTMLDivElement] 之间的差异

标签 javascript dom reactjs

我想知道 document.getElementsByClassName 返回的 [object HTMLCollection][object HTMLDivElement] 有什么区别>document.querySelector

[object HTMLCollection] 是否意味着我们正在执行“更广泛”的 DOM 扫描,并且将返回元素集合(如果存在)?这就是为什么它返回 HTML Collection 而不是 Element?

但是,由于 ReactDOM.render 不接受返回的 [object HTMLCollection] 用作第二个参数,因此出现了这个问题。

干杯。

最佳答案

HTMLCollection 是一组元素。它可能包含 0 个或多个元素。

HTMLDivElement 是单个元素

<小时/>

document.getElementsByClassName('x') 更像 document.querySelectorAll('.x') 因为每个都会返回一个组。

document.querySelector 只会返回单个元素

关于javascript - 返回的 [object HTMLCollection] 和 [object HTMLDivElement] 之间的差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38067441/

相关文章:

javascript - 获取拖动 react 传单时的当前坐标

php - 表单验证

javascript - 向 DOM 元素添加变量

javascript - nightmarejs document.getElementsByClassName() 返回空对象

javascript - querySelectorAll() 和 getElementsByClassName() 有什么区别

ReactJS setState 具有多维对象和动态键

javascript - useCallback 并传入参数

javascript - Django:在脚本中使用上下文变量

javascript - setTimeOut 带参数执行函数

javascript - 无法通过javascript将href和class添加到列表项