потому что что операторы больше-меньше конвертируют нулл в 0
по этому
0 больше 0 - false
0 меньше 0 - false
нулл == 0 - false
0 больше-равно 0 - true
P.S - просто фильтр реактора пожрал код)
по этому
0 больше 0 - false
0 меньше 0 - false
нулл == 0 - false
0 больше-равно 0 - true
P.S - просто фильтр реактора пожрал код)
в 3 случае особый кейс. при нестрогом сравнении null равен только самому себе или undefined
ты всё ещё про js?
>= в js это !
а вот, нихуя.
а почему тогда null != 0 труе
я не сильно шарю в тонкостях, но думал что оно просто операции сравнения считает как false потому что разные типы, а "больше/равно" интерпретирует как противоположное "меньше"
я не сильно шарю в тонкостях, но думал что оно просто операции сравнения считает как false потому что разные типы, а "больше/равно" интерпретирует как противоположное "меньше"
блин, вроде понимал, потом прочитал ЕСМА по хабрассылке, теперь снова запутался и перестал понимать ))
Это конечно смешно, но не понимаю в каком случае на практике может понадобится такая проверка.
на собеседовании, когда долбаебу интервьюеру нужно будет выебнуться и показать свое превосходство ну или нужно слить кандидата, а он уж шибко умный, то задаются такие вопросы
Долбоебы-интервьюверы минусуют тебя. Держи плюсик.
Если код не особо протестирован и нет проверки входных данных - нулл может проскакивать и даже правильно считаться за "фолс". И лишь месяцы-годы спустя, кто-то сделает хотфикс, изменив на >=, и вызовет неожиданную проблему.
Маловероятно, но самые надоедливые баги - именно такие.
Маловероятно, но самые надоедливые баги - именно такие.
Потому что типы нужно приводить вручную, чтоб такой хуйни не было, либо проверять на isNull
Просто держаться подальше от js
Ниасиляторы просто клепают мемы, если ты сам не поставил пистолет на предохранитель, то он не виноват, что ты отстрелил себе яйца.
Очень хорошо видна разница в подходах, да.
У нормальных людей программирование - это планомерная работа по достижению результата, и язык - инструмент в ней.
И только у джаваскриптеров программирование это война, и язык - пистолет, за которым нужно следить, чтобы не выстрелить себе в ногу.
"Хаха, неосиляторы, скучно работают, вместо того, чтобы воевать!"
У нормальных людей программирование - это планомерная работа по достижению результата, и язык - инструмент в ней.
И только у джаваскриптеров программирование это война, и язык - пистолет, за которым нужно следить, чтобы не выстрелить себе в ногу.
"Хаха, неосиляторы, скучно работают, вместо того, чтобы воевать!"
Назови мне язык программирования, в котором нельзя выстрелить себе в ногу?
я бы сказал "дебиляторы"
ну серьёзно
в любом учебнике по js начала нулевых есть все эти ебаные нюансы приведения типов
ну серьёзно
в любом учебнике по js начала нулевых есть все эти ебаные нюансы приведения типов
Послушай, ты здраво рассуждаешь, если бы не одно маленькое.
Вот есть аутисты, живущие в своем манямирке, точно знающие, как должно быть. А есть объективная реальность, в силу самых разных факторов являющаяся такой, какая она есть.
Вот есть жаваскрипт, со всех сторон плохой, но он блять данность, дефолтно работающая во всех браузерах вот уже охуеть сколько лет как. И для этого есть тонна непреодолимых сейчас причин (верим, что преодолимых в будущем).
А есть аутисты со своим блять "Просто держаться подальше от js", не догоняющих, что веб-стандарты разрабатываются людьми вот сильно умнее многих из нас. И если бы была хоть малейшая возможность хотя бы в ближайшие 10 лет полностью отказаться от JS, ей бы уже 100 раз воспользовались.
Вот есть аутисты, живущие в своем манямирке, точно знающие, как должно быть. А есть объективная реальность, в силу самых разных факторов являющаяся такой, какая она есть.
Вот есть жаваскрипт, со всех сторон плохой, но он блять данность, дефолтно работающая во всех браузерах вот уже охуеть сколько лет как. И для этого есть тонна непреодолимых сейчас причин (верим, что преодолимых в будущем).
А есть аутисты со своим блять "Просто держаться подальше от js", не догоняющих, что веб-стандарты разрабатываются людьми вот сильно умнее многих из нас. И если бы была хоть малейшая возможность хотя бы в ближайшие 10 лет полностью отказаться от JS, ей бы уже 100 раз воспользовались.
Да пусть на клиенте живёт, и да, там, естественно, альтернативы нет. И фронтендам так или иначе JS нужно знать.
Только не надо это тащить на сервер. Одно время был бум ноды на сервере, и юноши с горящими глазами пытались эту ноду везде пихать. Слава яйцам, как и любая мода, оно уже прошло, и сейчас осталось только в тех проектах, где удалось пропихнуть, и теперь уже слишком дорого избавляться.
Только не надо это тащить на сервер. Одно время был бум ноды на сервере, и юноши с горящими глазами пытались эту ноду везде пихать. Слава яйцам, как и любая мода, оно уже прошло, и сейчас осталось только в тех проектах, где удалось пропихнуть, и теперь уже слишком дорого избавляться.
ОК, ты не из этих ебанутых фанатиков, поэтому если персонально тебя зацепил своим сообщением, то принимай извинения.
Проблема в чем (я ловил ее не только у себя в компании, но и от соседних слышал).
Есть компании по 1000 человек сотрудников. Их дохуя. Есть компании по 100 человек сотрудников. Их тоже дохуя.
А есть компании по 10 человек сотрудников, и их сильно больше, чем всех вышеперечисленных.
И вот им гораздо проще и дешевле иметь один стек. То есть, если у тебя все фронтендеры, то любые встающие серверные задачи сильно проще решать на знакомом языке.
Конкретно у меня был момент, что мы в JS-ориентированной компании написали внутреннюю тулзу на языке Clojure (был особо активный сотрудник, который хуярил по 14 часов в день).
Сотрудник 2 года как уволился, сейчас имеет ЗП больше ляма рублей в месяц, а его тулзу мы за 2 месяца переписали на ноде, потому что никто не ебет как писать на clojure, зато тулза получилась поддерживаемая и понятная.
Проблема в чем (я ловил ее не только у себя в компании, но и от соседних слышал).
Есть компании по 1000 человек сотрудников. Их дохуя. Есть компании по 100 человек сотрудников. Их тоже дохуя.
А есть компании по 10 человек сотрудников, и их сильно больше, чем всех вышеперечисленных.
И вот им гораздо проще и дешевле иметь один стек. То есть, если у тебя все фронтендеры, то любые встающие серверные задачи сильно проще решать на знакомом языке.
Конкретно у меня был момент, что мы в JS-ориентированной компании написали внутреннюю тулзу на языке Clojure (был особо активный сотрудник, который хуярил по 14 часов в день).
Сотрудник 2 года как уволился, сейчас имеет ЗП больше ляма рублей в месяц, а его тулзу мы за 2 месяца переписали на ноде, потому что никто не ебет как писать на clojure, зато тулза получилась поддерживаемая и понятная.
> веб-стандарты разрабатываются людьми вот сильно умнее многих из нас
>И если бы была хоть малейшая возможность хотя бы в ближайшие 10 лет полностью отказаться от JS, ей бы уже 100 раз воспользовались.
людьми, в том числе создателем JS, активно пилится WASM
людьми, в том числе создателем JS, активно пилится WASM
WASM, все же нужен для других целей. Он не заменит жс как основной язык фронтенда, он поможет не натягивать сову на глобус, в плане каких-то штук, типа условного онлайн фотошопа. Раньше это был бы только жс, теперь можно написать на условном расте и запустить в браузере.
Да легко. Стоит пачка условий, если null - все они пропускаются. В SQL работает на ура, а в JS опять какие-то пирожки с котятами.
Так как js нихуя не проверяет типы, то тебе нулл может прилететь там, где ты ждёшь число.
Ничего нового.
0~=null
подскажите плиз где можно доходчиво почитать или посмотреть картинки на тему преобразований типа arrays оf objects, object of arrays с мапами, флатмапами и энтриз/фромэнтриз (и стрелочные функции, юзаемые при этом, когда key,value, где какие скобочки ставить).
достаточно уверенно и с малым процентом багов получается нахуярить несколько страниц нормального кода, достать/распарсить/слить/обработать данные, но потом затык как их записать в новую таблицу. упираюсь в последние 5-7 строк и вечно убиваю по полдня на тривиальную вроде бы задачу типа "есть массив массивов, запушенных из Map (имя: петя, возраст:20, пол: мужской... etc), надо сделать массив объектов вида {fields:{"имя":"петя}}"
(подсказывать не прошу, я доебу это за пару-тройку часов методом тыка, подскажите как легче это понять и уложить в голову). javascript.ru и developers.mozilla выкурил уже не раз, но не укладывается в мозги, хоть убей.
достаточно уверенно и с малым процентом багов получается нахуярить несколько страниц нормального кода, достать/распарсить/слить/обработать данные, но потом затык как их записать в новую таблицу. упираюсь в последние 5-7 строк и вечно убиваю по полдня на тривиальную вроде бы задачу типа "есть массив массивов, запушенных из Map (имя: петя, возраст:20, пол: мужской... etc), надо сделать массив объектов вида {fields:{"имя":"петя}}"
(подсказывать не прошу, я доебу это за пару-тройку часов методом тыка, подскажите как легче это понять и уложить в голову). javascript.ru и developers.mozilla выкурил уже не раз, но не укладывается в мозги, хоть убей.
таки добил, быстрее чем ожидал, карта слезу любит. но сцылочка на полезный ресурс все равно пригодилась бы.
Чтобы написать коммент, необходимо залогиниться
Нахуя тянуть, давайте сразу с главного
https://www.destroyallsoftware.com/talks/wat