שאלה ב javascript
function foo() {
var a = 10;
function bar() {
a *= 2 ;
return a;
}
return bar;
}
var baz = foo();
document.writeln(baz);
document.writeln(baz()); // write 20.
document.writeln(baz()); // write 40.
document.writeln(baz()); // write 80.
var blat = foo();
document.writeln(blat()); // returns 20
לא הבנתי למה כל פעם שאני מפעיל את הפונקתיה foo () בעזרת המשתנה baz ערך a נשמר מהקריאה הקודמת..
תודה
function foo() {
var a = 10;
function bar() {
a *= 2 ;
return a;
}
return bar;
}
var baz = foo();
document.writeln(baz);
document.writeln(baz()); // write 20.
document.writeln(baz()); // write 40.
document.writeln(baz()); // write 80.
var blat = foo();
document.writeln(blat()); // returns 20
לא הבנתי למה כל פעם שאני מפעיל את הפונקתיה foo () בעזרת המשתנה baz ערך a נשמר מהקריאה הקודמת..
תודה