dom attached

Benchmark created by Paul Tavares on


Description

What's faster? Node.contains() or custom function to walks up the dom tree looking for document.body?

Preparation HTML

<div>
    <div>
        <div>
            <div>
                <div>
                    <div>
                        <div>
                            <div>
                                <div>
                                    <div>
                                        <div></div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
    <div>
        <div>
            <div>
                <div>
                    <div>
                        <div>
                            <div>
                                <div>
                                    <div>
                                        <div id="check"></div>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

Setup

var isAttached = function(element){
        var inDom = function(ele){
            if (ele === document) {
                return true;
            }
            ele = ele.parentNode;
            if (ele) {
                return inDom(ele);
            }
            return false;
        };
        return inDom(element);
    }

Test runner

Ready to run.

Testing in
TestOps/sec
node.contains
document.body.contains(document.getElementById("check"))
ready
custom function
isAttached(document.getElementById("check"))
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.

  • Revision 1: published by Paul Tavares on