Jquery Template Engine Test

Benchmark created by Aaron Aichlmayr on


Preparation HTML

<script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script src="http://borismoore.github.com/jsrender/jsrender.js"></script>
<script type="text/javascript" src="http://terrainformatica.com/kite/kite.js"></script>
<script type="text/javascript" src="http://sfsdldeploy01.ios.com/mustache.js"></script>
<script src="http://twigkit.github.com/tempo/tempo.js" type="text/javascript"></script>
<script type="text/javascript" src="http://tryhandlebarsjs.com/js/libs/handlebars-1.0.0.beta.6.js"></script>
<script type="text/javascript" src="http://sfsdldeploy01.ios.com/ICanHaz.min.js"></script>
<script type="text/javascript" src="http://sfsdldeploy01.ios.com/jquery.nano.js"></script>
<script type="text/javascript" src="http://sfsdldeploy01.ios.com/jquery.jqote2.min.js"></script>
<script type="text/javascript" src="http://sfsdldeploy01.ios.com/tinytim.min.js"></script>


<script type="text/kite" id="kiteTmpl"><a href='{{url}}'>{{text}}</a></script>
<script id="hasJsTmpl" type="text/html"><a href='{{url}}'>{{text}}</a></script>
<script id="jquoteTemplate" type="text/x-jqote-template"><a href='{{url}}'>{{text}}</a></script>

Setup

$(document.body).append($(document.createElement("div")).html("<div id='tmpl'><a href='{{url}}' data-template>{{text}}</a></div>").attr("class","testDiv"))

Teardown


    $(".testDiv").remove()
  

Test runner

Ready to run.

Testing in
TestOps/sec
jsrender
$.templates({"link":"<a href='{{>url}}'>{{>text}}</a>"})
$(document.body).append($(document.createElement("div")).html($.render.link([{"url":"#","text":"test"}])).attr("class","testDiv"))
 
ready
Kite
$(document.body).append($(document.createElement("div")).html(kite("#kiteTmpl", {"url":"#","text":"test"})).attr("class","testDiv"))
ready
mustache
$(document.body).append($(document.createElement("div")).html(Mustache.render("<a href='{{url}}'>{{text}}</a>", {"url":"#","text":"test"})).attr("class","testDiv"))
ready
Tempo
$(document.body).append($(document.createElement("div")).html(Tempo.prepare("tmpl").render([{"url":"#","text":"test"}])));
ready
Handlebars
$(document.body).append($(document.createElement("div")).html(Handlebars.compile("<a href='{{url}}'>{{text}}</a>")({"url":"#","text":"test"})).attr("class","testDiv"))
ready
icanhazjs
$(document.body).append($(document.createElement("div")).html(ich.hasJsTmpl({"url":"#","text":"test"})).attr("class","testDiv"))
ready
nano
$(document.body).append($(document.createElement("div")).html($.nano("<a href='{{url}}'>{{text}}</a>", {"url":"#","text":"test"})).attr("class","testDiv"))
ready
JQoute2
$(document.body).append($(document.createElement("div")).html($('#jquoteTemplate').jqote({"url":"#","text":"test"}, '*')).attr("class","testDiv"))
ready
TinyTim
$(document.body).append($(document.createElement("div")).html(tim("<a href='{{url}}'>{{text}}</a>", {"url":"#","text":"test"})).attr("class","testDiv"))
ready

Revisions

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

  • Revision 1: published by Aaron Aichlmayr on