HTML Preparation code:
x
 
1
<script
2
  src="https://code.jquery.com/jquery-3.4.1.min.js"
3
  integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
4
  crossorigin="anonymous"></script>
5
6
<div id="outer">
7
<div>
8
<div>
9
<div>
10
<div>
11
<div>
12
<div>
13
<div>
14
<div>
15
<div>
16
<div>
17
<div>
18
<div>
19
<div id="inner">
20
21
</div>
22
</div>
23
</div>
24
</div>
25
</div>
26
</div>
27
</div>
28
</div>
29
</div>
30
</div>
31
</div>
32
</div>
33
</div>
34
</div>
35
36
37
<div id="outer2">
38
<div>
39
<div>
40
<div>
41
<div>
42
<div>
43
<div>
44
<div>
45
<div>
46
<div>
47
<div>
48
<div>
49
<div>
50
<div id="inner2">
51
52
</div>
53
</div>
54
</div>
55
</div>
56
</div>
57
</div>
58
</div>
59
</div>
60
</div>
61
</div>
62
</div>
63
</div>
64
</div>
65
</div>
66
Script Preparation code:
 
var inner = document.getElementById("inner");
var outer = document.getElementById("outer");
var inner2 = document.getElementById("inner2");
var outer2 = document.getElementById("outer2");
Tests:
  • node.contains

     
    var x = outer.contains(inner)
    var y = outer.contains(inner2)
    var z = outer2.contains(inner)
    var a = outer2.contains(inner2)
  • node.parentNode

     
    function isDescendant(parent, child) {
         var node = child.parentNode;
         while (node != null) {
             if (node == parent) {
                 return true;
             }
             node = node.parentNode;
         }
         return false;
    }
    var x = isDescendant(outer, inner);
    var y = isDescendant(outer, inner2);
    var z = isDescendant(outer2, inner);
    var a = isDescendant(outer2, inner2);
Rendered benchmark preparation results:

Suite status: <idle, ready to run>

Previous results

Experimental features:

  • Test case name Result
    node.contains
    node.parentNode

    Fastest: N/A

    Slowest: N/A

Latest run results:
Run details: (Test run date: 2 years ago)
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36
Chrome 107 on Linux
View result in a separate tab
Test name Executions per second
node.contains 1446545.0 Ops/sec
node.parentNode 616384.6 Ops/sec