нубский вопрос про return
спасибо тему можно удалять)
|
Цитата:
вопрос в том, как она будет работать |
Странный вопрос, ну ладно.
1) Тут ошибка counter(); // counter не функция Почему? Да потому, что в переменную counter записан результат работы функции, а не ссылка на нее. 2) В целом код работает, т.е, если исправить строку с ошибкой, допустим на // counter(); alert(counter); // 1 то получим результат функции, т.е 1. 3) Почему всегда 1? var currentCount = 1; Ну, потому что при вызове функции внутри неё объявляется новая переменная currentCount. которая равна 1. 4) Но стоп, почему 1?? Ведь я... return currentCount++ увеличил значение на 1. Нет, не увеличил, ты сначала вернул результат, а потом ее увеличил, но этого ты никогда не увидишь, ибо функция уже вернула результат, следственно - отработала свое. подробнее тут: https://learn.javascript.ru/operator...%D0%BD%D 1%82 |
спасибо большое, что то мне повылазило и действительно это проглядел, глупо получилось , но доходчиво обьяснил.
|
Часовой пояс GMT +3, время: 17:19. |