|
|
|
|
|
by jaysoo
5840 days ago
|
|
In the case of closure, yes you will take a small performance hit. But the example given is still invalid because the only scope present is the function-scope (for-loop doesn't create new scope). For example, if you ran the code below in FireBug you'll get the same results (minor variance aside). function foo() {
var a = 0;
for (var i=0, j=a; i<10000000; i++) {
var x = j+i;
}
} function bar() {
var a = 0;
for (var i=0; i<10000000; i++) {
var x = a+i;
}
} (function() {
var start = new Date().getTime(), end;
foo();
end = new Date().getTime();
console.log(end-start);
})(); (function() {
var start = new Date().getTime(), end;
bar();
end = new Date().getTime();
console.log(end-start);
})(); |
|
In your examples, just change the value of variable 'a' to 100 or 1000 and you will see the difference.