ChocolateChipJS & doT (v6)

Revision 6 of this benchmark created on


Description

Test performance of ChocolateChipJS (version 3.0), jQuery (version 2.0.3) and Zepto at outputting doT templates.

Preparation HTML

<script src="http://zeptojs.com/zepto.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<script src="http://vxjs.org/chocolatechip-3.0.7.min.js"></script>
<script src="https://raw.github.com/olado/doT/master/doT.js"></script>

<script>
jQuery.noConflict();

window.sharedVariables = {
   header: "Header",
   header2: "Header2",
   header3: "Header3",
   header4: "Header4",
   header5: "Header5",
   header6: "Header6",
   list: ['1000000000', '2', '3', '4', '5', '6', '7', '8', '9', '10']
};

window.doTTemplate = doT.template("<div><h1 class='header'>${it.header}</h1><h2 class='header2'>${it.header2}</h2><h3 class='header3'>${it.header3}</h3><h4 class='header4'>${it.header4}</h4><h5 class='header5'>${it.header5}</h5><h6 class='header6'>${it.header6}</h6><ul class='list'>{{for(var i = 0,l=it.list.length;i<l;i++) { }}<li class='item'>${it.list[i]}</li>{{ } }}</ul></div>");
window.handlebarsTemplate = Handlebars.compile("<div><h1 class='header'>{{{header}}}</h1><h2 class='header2'>{{{header2}}}</h2><h3 class='header3'>{{{header3}}}</h3><h4 class='header4'>{{{header4}}}</h4><h5 class='header5'>{{{header5}}}</h5><h6 class='header6'>{{{header6}}}</h6><ul class='list'>{{#list}}<li class='item'>{{{.}}}</li>{{/list}}</ul></div>");

</script>

<div id="template" style="display:none"></div>

Test runner

Ready to run.

Testing in
TestOps/sec
ChocolateChipJS & doT
$chocolatechip("#template").html(doTTemplate(sharedVariables));
ready
jQuery & doT
jQuery("#template").html(doTTemplate(sharedVariables));
ready
Zepto & doT
Zepto("#template").html(doTTemplate(sharedVariables));
ready

Revisions

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