Wpis z mikrobloga

#javascript pytanie: Jaki jest cel użycia drugiego returna, a nie po prostu counter++?

var testModule = (function () {
var counter = 0;

return {
incrementCounter: function () {
return counter++;
}
};
})();

Zapytuję, gdyż taki wzorzec podano w mądrej książce, natomiast nie dostrzegam jego potrzeby w tym miejscu, a chciałbym dostrzec jeśli taka występuje.
  • 13
@wrrior: Tak się kończy tłumaczenie wzorców za pomocą ciągu Fibonacciego i innych przykładów oderwanych od rzeczywistości.

To co masz tutaj to jeden z możliwych wzorców na stworzenie modułu, którego śmieci nie wypływają poza jego własne domknięcie (closure) i do których nie ma dostępu z zewnątrz.

Pierwszy return zwraca intefejs (API) - czyli sposób w jaki inny programista - bądź ty sam będzie się komunikował z tym modułem.

Drugi return jest tutaj
@rezoner: Dzięki za nie zamieszczanie odpowiedzi w formie pytania ( ͡° ͜ʖ ͡°) chociaż koncepcję zasadniczo rozumiem i w celu upewnienia się, że niczego nie przeoczyłem zadałem pytanie właśnie o ten drugi return. Pozdrówki.