refactor flatten

This commit is contained in:
Leo Horie 2014-11-13 21:15:07 -05:00
parent 328ae0769f
commit 59ebe873f7

View file

@ -394,18 +394,13 @@ Mithril = m = new function app(window, undefined) {
return nodes return nodes
} }
function flatten(data) { function flatten(data) {
var index = 0; //recursive flatten
loop: while (true) { for (var i = 0; i < data.length; i++) {
for (var i = index; i < data.length; i++) {
var item = data[i];
if (type.call(data[i]) == sArr) { if (type.call(data[i]) == sArr) {
index = i;
data = data.concat.apply([], data); data = data.concat.apply([], data);
continue loop i-- //check current index again and flatten until there are no more nested arrays at that index
} }
} }
break
}
return data return data
} }
function autoredraw(callback, object) { function autoredraw(callback, object) {