Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   разъяснить результат функции (https://javascript.ru/forum/misc/73006-razyasnit-rezultat-funkcii.html)

Nailya 13.03.2018 13:22

разъяснить результат функции
 
Добрый день)

Помогите разобраться в небольшом коде счетчика

Вот в этом примере все логично - старт начинается с единицы
function counter(){
   var a = 0;

   return function(){
    a++;
    console.log(a);//старт с единицы
   };
  };

  var one = counter();
  
  one();//1
  one();//2
  one();//3


А вот в этом примере с нуля, хотя тот же код, только стиль написание немного изменился
function counter(){
   var a = 0;

   return function(){
    return a++;    
   };
  };

  var one = counter();
  
  console.log(one());//0
  console.log(one());//1
  console.log(one());//2


Вопрос: почему с нуля?

ksa 13.03.2018 13:26

Цитата:

Сообщение от Nailya
Вопрос: почему с нуля?

Буквари читать нужно. ;)
var a=0;
var b=0;
alert(a++);
alert(++b);

ksa 13.03.2018 13:27

Цитата:

Сообщение от Nailya
return a++;

Меняй на
return ++a;

Nexus 13.03.2018 13:27

Цитата:

Сообщение от Nailya
почему с нуля?

Ответ есть тут: https://learn.javascript.ru/operator...%D0%BD%D 1%82

Nailya 13.03.2018 13:38

да)) действительно азбуку надо читать


Часовой пояс GMT +3, время: 22:51.