Обновить
5
0
Г.О.@gro

Пользователь

Отправить сообщение
но функция не просто именованный блок (к тому же она может и неименованной быть :) ).
функция объект, её можно куда-нибудь передавать, вызывать и т.д. простой блок нельзя. и контекст, соответственно, создаётся в момент вызова функции.
а разве кто-то спорит?
В cpp и ещё сотне языков блоки создают отдельный контекст, в питоне и ещё сотне не создают. какая разница, причём тут логично?
но этот язык изначально был расчитан на нубов, ещё больше чем PHP. Там даже точки с запятыми сделали необязательными, чтобы прогеры-верстальщики не перенапряглись.
В JS ярчайшие проблемы с архитектурой.
Имеющие, кстати, теже самые корни, что и у PHP — делали изначально одно, а потом периодически поверх накручивали совершенно другое.
Эти статьи нужны только тем, кто их пишет и никому больше.

И ещё тем, кто под ними 150 комментариев за час нафлудят.
PHP-программисты убили родителей автора?
Почему, вместо того, чтобы программировать на своём любимом языке и получать от этого удовольствие нужно писать такую гневную простыню?
Походу это два совершенно разных метода, делающих разные вещи
я не приводил этот аргумент, более того в соседней ветке заявил, что в данном контексте, он по моему мнению абсолютно бессмысленен
Ну вот все эти размышления что тут стоит дороже и есть основной антипаттерн )
это переменная не освящена стандартом, в отличии от typeof. хотя может и ошибаюсь.
Раз мы ударяемся в дебри того, что кто-то мог переопределить undefined, то тут мы должны дойти до того, что этот же псих мог бы переопределить attachEvent. Что, кстати, мне кажется более имеющим смысл.
0, false и '' не равны null.

Да, вы правы.

Про null выше ответил
Мы проверяем существует ли свойство или нет (то есть undefined). Мне кажется куда логичнее проверять на undefined путём сравнения с undefined, хотя сравнение с приведением типов с null тоже в данном случае сработает.
ну и чёткое сравнение с undefined на 0,0001% теоретически лучше чем сравнение с приведением типа с null, 0 или пустой строкой (непомню уже, пустая строка false?)
Если заранее известен конкретный тип (function), то, конечно, лучше проверять сразу на него.
тем, что паттерны и стандарты хороши не тем, что они чем-то лучше других, а тем, что они стандарты :)
глобального «undefined» нет в старых IE
Крокфорд рекомендует глупую проверку на undefined или hasOwnProperty() вместо 'in'
«причисляют», пардон

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург и область, Россия
Зарегистрирован
Активность