История изменений
Исправление AndreyKl, (текущая версия) :
Дело тут не в объявлении переменной, а в обозначении локальных/глобальных переменных.
Да нет, как раз дело во «вводе» переменной в контекст (использую это слово, раз объявление не подходит). И перепишу ответ с php с использованием слова «вводить» чтобы ты не цеплялся.
Пример с php не в тему, потому что переменную не надо «вводить», и такой неоднозначности (ввод одной и той же переменной дважды) просто не возникает. Нельзя начать думать что в цикле разные переменные если они имеют одно и то же имя. Или в ифе. Или ещё где.
В си, я так понял, тоже раньше так было, как тут выяснилось. Но это убрали, что разумно. Потому что лажа. А js так и тащит эту неадекватность, хотя уже даже замена есть и даже везде работает, вроде.
Нет, это ты предполагаешь, потому что у тебя пробел в знаниях. Грамотные люди знают, что в динамических языках не требуется объявлять переменную, но можно использовать модификаторы видимости.
Честно говоря я действительно не знаю указанную разницу о «модификаторах видимости» и «объявлениях».
Но опять же честно говоря, мне это совершенно неинтересно.
То что поведение яваскрипта неожиданно, кажется, очевидно для всех в этом треде кроме нескольких особо глубоких знатоков. Даже авторы языка, введя let косвенно это подтвердили.
Даже ты, честно говоря, косвенно это подтвердил когда вопил про
Для тех кто в танке, такой скоуп сделан для того, чтобы можно было писать так:
Т.е. сейчас выходит что он не введён для того чтобы писать так, а это просто так и должно быть из за того что var де не объявление, а модификатор. Угу, я понял. Кто то сбегал, прочитал вики, а теперь кичиться своей грамотностью в технологиях прошлого века. Ну молодец, историк, чего уж там.
Исходная версия AndreyKl, :
Дело тут не в объявлении переменной, а в обозначении локальных/глобальных переменных.
Да нет, как раз дело во «вводе» переменной в контекст (использую это слово, раз объявление не подходит). И перепишу ответ с php с использованием слова «вводить» чтобы ты не цеплялся.
Пример с php не в тему, потому что переменную не надо «вводить», и такой неоднозначности (ввод одной и той же переменной дважды) просто не возникает. Нельзя начать думать что в цикле разные переменные если они имеют одно и то же имя. Или в ифе. Или ещё где.
В си, я так понял, тоже раньше так было, как тут выяснилось. Но это убрали, что разумно. Потому что лажа. А js так и тащит эту неадекватность, хотя уже даже замена есть и даже везде работает, вроде.
Нет, это ты предполагаешь, потому что у тебя пробел в знаниях. Грамотные люди знают, что в динамических языках не требуется объявлять переменную, но можно использовать модификаторы видимости.
Честно говоря я действительно не знаю указанную разницу о «модификаторах видимости» и «объявлениях».
Но опять же честно говоря, мне это совершенно неинтересно.
То что поведение яваскрипта неожиданно, кажется, очевидно для всех в этом треде кроме нескольких особо глубоких знатоков. Даже авторы языка, введя let косвенно это подтвердили.
Даже ты, честно говоря, косвенно это подтвердил когда вопил про
Для тех кто в танке, такой скоуп сделан для того, чтобы можно было писать так:
Т.е. сейчас выходит что он не введён для того чтобы писать так, а это просто так и должно быть из за того что var де не объявление, а модификатор. Угу, я понял. Кто то сбегал, прочитал вики, а теперь кичиться своей грамотностью в технологиях прошлого века. Ну молодец, историк, чего уж там.