hamper 𓅝
window это как раз глобальный неймспейс в браузерах
hamper 𓅝
все глобальные переменные и функции в нем лежат
Sigmas
ок, сэнкс.
Sigmas
это браузерное? тогда проверяй что window.элемент !== undefined
А могу я использовать для проверки type of?
hamper 𓅝
ага
Sigmas
ага
Спасибо.
hamper 𓅝
просто вроде уже все новые браузеры умеют undefined напрямую как переменную
Oleg
какой то ад описал ><
Это из жизни. Текстовый редактор нужен был с плюшками. А почему это ад?
hamper 𓅝
в каком смысле? всегда и умели)
а да, что то я не о том думаю ) да typeof нужно использовать когда проверяешь переменную которой может вооще не быть например если X не существует то X === undefined ошибку вызовет, а typeof X === 'undefined' нет
hamper 𓅝
а для полей объектов уже безопасно и напрямую с undefined сравнивать
Oleg
Нет, если совсем нет, то иначе проверка
Oleg
'a' in b
Oleg
Где b объект, в котором может быть, а может не быть а
Oleg
Если по замыканию, то тайпоф
hamper 𓅝
ну b.a === undefined в этом случае тоже корректно сработает
Oleg
Не совсем
hamper 𓅝
почему?
Oleg
Кто-то может определить b.a = undefined
Oleg
Причем оно и даже память будет занимать
Oleg
Но undefined значение иметь
hamper 𓅝
и правда, вот до этого не догадался
Oleg
👍
Oleg
не думал сменить работу?
Не, мне всё и правда нравится
Oleg
Кто-нибудь в проде юзает переопределение метода toString или может быть valueOf?
Oleg
Дефолтный метод объектов
hamper 𓅝
я только toJSON переопределял, правда это на бекэнде в ноде, и не к Object а к Error типу
hamper 𓅝
точнее там у Error вообще нет toJSON, поэтому к нему JSON.stringify не применялся
hamper 𓅝
то есть не применялся а выдавал {} всегда
Oleg
А то есть кто считает черной магией, кто нормальной обычной штукой
Oleg
Но нужно больше мнений
Алексей
Алексей
в приложение на эксте
Там своя пакетная система. Пакеты есть
Vlad
где из пакеты побраузить можно?
hlomzik
Кто-то может определить b.a = undefined
и?)) typeof b.a === 'undefined' :) никакой разницы
hlomzik
это как раз разница проверок in и на undefined
Алексей
но зачем если есть нпм?
На тот момент. Не было. Также история с meteor (там тоже самое ибо не было)
Oleg
но зачем если есть нпм?
Зачем нужен реакт если есть ангуляр? Такой же вопрос
hlomzik
но зачем если есть нпм?
не стоит боготворить нпм :)
Vlad
я не боготворю
Oleg
и?)) typeof b.a === 'undefined' :) никакой разницы
Разница в том что undefined и физическое отсутствие ключа в объекте - разные вещи
Vlad
так побраузить можно?
hlomzik
Разница в том что undefined и физическое отсутствие ключа в объекте - разные вещи
но проверки b.a === undefined и typeof b.a === 'undefined' будут работать одинаково
hlomzik
а, там про in тоже было, ок
Алексей
где из пакеты побраузить можно?
Корпоративный сегмент. Все в себе. А то что opensource в репозиториях лежит. https://docs.sencha.com/cmd/guides/cmd_packages/cmd_creating_packages.html
Oleg
Или так
Oleg
https://market.sencha.com/
Vlad
лодаша, нет. да?
Алексей
лодаша, нет. да?
Там свой есть.
Алексей
Из коробки
Oleg
+1
Vlad
хорошо
Vlad
что вы делаете когда есть пакет на нпм
Vlad
но нет в маркете сенчи?
Oleg
Скажу по своему опыту
Oleg
99% всего что было нужно - есть из коробки
Oleg
По этому банально не пригождалось
Oleg
Вот прям вообще
Oleg
Это может показаться странным
Oleg
Но... есть как есть
Oleg
http://docs.sencha.com/extjs/6.2.0/classic/Ext.html
Oleg
Там слева дерево классов
Oleg
Есть на любой вкус
Oleg
И подключается внутренним механизмом рекваера
Oleg
С собой только ядро
Anonymous
а реактивность есть?
Oleg
Да
Dreamerinnoise
Там и промисы свои
Dreamerinnoise
http://docs.sencha.com/extjs/6.2.0/modern/Ext.Deferred.html#methods
Oleg
Не
Oleg
http://docs.sencha.com/extjs/6.2.0/classic/Ext.Promise.html
Oleg
Вот промисы
Vlad
они ни A+
Vlad
=(
Vlad
ну окай, у вас свой энтерпрайзный около джавишный мир
Vlad
огороженный от открытой экосистемы ноды