Performance tuning: Push in an existing Array instance, instead of recreating an Array every time with concat.

This commit is contained in:
Alex Galays 2014-11-13 16:10:45 +01:00
parent 35f4d87f67
commit 7720f67ca3

View file

@ -194,7 +194,11 @@ Mithril = m = new function app(window, undefined) {
//update the list of DOM nodes by collecting the nodes from each item
for (var i = 0; i < data.length; i++) {
if (cached[i] != null) nodes = nodes.concat(cached[i].nodes)
if (cached[i] != null) {
for (var j = 0; j < cached[i].nodes.length; j++) {
nodes.push(cached[i].nodes[j]);
}
}
}
//remove items from the end of the array if the new array is shorter than the old one
//if errors ever happen here, the issue is most likely a bug in the construction of the `cached` data structure somewhere earlier in the program