KO vs. _

Benchmark created by MS on


Preparation HTML

<script src="//underscorejs.org/underscore-min.js"></script>
<script src="//knockoutjs.com/downloads/knockout-3.2.0.js"></script>

Setup

var list = [];
    for (var l = 0; l < 100; l++) {
        list[l] = {
            id: l,
            code: l.toString(),
            text: "Item #" + l
        };
    }
    
    var onLoop = function onLoop(item) {
        return item.id > 20 || item.id < 50;
    };

Test runner

Ready to run.

Testing in
TestOps/sec
KO arrayFilter
ko.utils.arrayFilter(list, onLoop);
ready
_ filter
_.filter(list, onLoop);
ready
KO arrayForEach
ko.utils.arrayForEach(list, onLoop);
ready
_ each
_.each(list, onLoop);
ready

Revisions

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