Javascript Element.querySelector用于元素';直系子

Javascript Element.querySelector用于元素';直系子,javascript,html,Javascript,Html,我有一些带有HTML元素的JS常量(例如Div)。我需要知道元素是否包含一些HTML结构。例如,以下是我的HTML: <div id="container"> <table class="cls1 cls2"> <tbody class="cls3 cls4"> <tr class="cls5 cls6"> <td></td> <td></td>

我有一些带有HTML元素的JS常量(例如Div)。我需要知道元素是否包含一些HTML结构。例如,以下是我的HTML:

<div id="container">
  <table class="cls1 cls2">
    <tbody class="cls3 cls4">
      <tr class="cls5 cls6">
        <td></td>
        <td></td>
        <td></td>
      </tr>
    </tbody>
  </table>  
</div>
<div></div>
<span></span>
这只是一个例子。实际上div不包含“container”id。我从某个函数中得到这个元素,所以我不知道元素的CSS选择器

我需要知道,如果元素包含这个CSS选择器:
table.cls1.cls2>tbody.cls3.cls4>tr.cls5.cls6>td
,那么
table.cls1.cls2
必须是div的直接子元素。使用这样的东西会很好:

const ok = div.querySelector('> table.cls1.cls2 > tbody.cls3.cls4 > tr.cls5.cls6 > td');
但它不是一个有效的选择器(以“>”开头)。

您可以使用伪类以self为目标,然后为直接子级编写选择器

const ok = div.querySelector(':scope > table.cls1.cls2 > tbody.cls3.cls4 > tr.cls5.cls6 > td');
const ok = div.querySelector(':scope > table.cls1.cls2 > tbody.cls3.cls4 > tr.cls5.cls6 > td');