function createCounter() {
var numberOfCalls = 0;
return function() {
return ++numberOfCalls;
}
}
function fOnLoad(e)
{ var fn = createCounter();
var fn2 = fn;
alert(fn());
alert(fn());
alert(fn());
alert(fn2());
alert(fn2());
alert(fn2());
}
onload=fOnLoad;
В десятой строке fn2 получает указатель на функцию создаваемую createCounter-ом, и соотвественно alert-ы считают от 1 до 6.
Возможно ли сделать так, чтоб в fn2 была ссылка на новую копию функции (т.е. fn и fn2 были бы независимыми счётчиками)?