From 9589ab89492c23e1d201f61617ae2a3bf54a0afc Mon Sep 17 00:00:00 2001 From: Ross Hadden Date: Tue, 3 Jul 2012 16:53:26 -0400 Subject: [PATCH] Implemented ability to iterate over objects, ala for-in. Also added the 'key' key to looped objects. My goal is to make this {{@key}}, but am still working on it. I would also like to unobtrusively make @key or @index work for arrays. --- lib/handlebars/base.js | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/lib/handlebars/base.js b/lib/handlebars/base.js index d22eb40b..03f41ef5 100644 --- a/lib/handlebars/base.js +++ b/lib/handlebars/base.js @@ -64,20 +64,33 @@ Handlebars.createFrame = Object.create || function(object) { Handlebars.registerHelper('each', function(context, options) { var fn = options.fn, inverse = options.inverse; - var ret = "", data; + var i = 0, ret = "", data; if (options.data) { data = Handlebars.createFrame(options.data); } - if(context && context.length > 0) { - for(var i=0, j=context.length; i