javascript :: javascript :: programming languages :: языки программирования :: программирование :: programming :: it humor :: programmer :: caption :: it юмор :: программисты :: картинка с текстом :: geek :: geek (Прикольные гаджеты. Научный, инженерный и айтишный юмор)

картинка с текстом программисты it юмор javascript языки программирования программирование geek 
картинка с текстом,программисты,it юмор,javascript,языки программирования,программирование,geek,Прикольные гаджеты. Научный, инженерный и  айтишный юмор,caption,programmer,it humor,geek,javascript,programming languages,programming

Подробнее

картинка с текстом,программисты,it юмор,javascript,языки программирования,программирование,geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор,caption,programmer,it humor,geek,javascript,programming languages,programming
Еще на тему
Развернуть
первый урок IRL?
Если меня разбудят через 50 лет и спросят: О чем шутят в IT-юморе ?
Я отвечу: математика JavaScript и сложность C++
denismen denismen 16.11.202416:22 ответить ссылка 13.2

Тебя не разбудят

JavaScript
...буду проституткой
mkmod mkmod 16.11.202417:22 ответить ссылка 9.5

А как заставить прибавить?

5+3 без кавычек.
Привести тип к числу. Number('5') + 3. Тогда будет использован не оператор конкатенации, а оператор сложения.

Только сейчас заметил, что третий пример неверный.
5+-'2'=3

yep
» console.log(5+-'2')
3
assemb assemb 17.11.202407:23 ответить ссылка 1.5

А зачем такой ебланизм нужен? Чтобы переменные не объявлять?

Ну да. Вроде как проще для обучения и неплохо в небольших скриптах.
sambaynu sambaynu 16.11.202419:29 ответить ссылка -1.4

Чтобы писать меньше, а делать больше. Кое-кто называет это "выразительностью языка". И как язык коротких сценариев EcmaScript от такой лексики только выигрывал на момент своего появления -- лаконично позволял добавлять динамики в статические документы. Оттуда же, например, прототипный извод ООП (при отсутствии полноценных классов до недавнего ES6). Однако с того момента его основное назначение сильно изменилось, и на нём хуярят фреймворки общего назначения.

Автоматическое приведение типов, чтобы вместо много строк написать одну короткую.
Называется конкатенация и интерполяция вроде.

На самом деле очень удобно, но на этапе обучения от этого горит жопа.

unoejk unoejk 16.11.202421:48 ответить ссылка 1.0

Чтобы такой хуйни не было, люди изобрели TypeScript.
Но это для душнил и натуралов.

unoejk unoejk 16.11.202421:52 ответить ссылка 0.7
Чуть ниже написал. Язык создавался чтобы свистеть и пердеть в браузере, чисто для того, чтобы подвигать элементы, нарисовать снежинки на фоне. И ошибки писать некуда и вообще ненужно, потому сделано так, что будет как попало выполняться, но не пвдать, какие бы данные ни встретились.

Ошибок не будет, если ты разрешишь творить любую хуйню и не считать это ошибкой

Ого, столько мудрости за раз.
mkmod mkmod 17.11.202409:12 ответить ссылка 0.0
В плюсах у тебя это не получится ещё на этапе написания кода и компиляции. Потому что в плюсах, как и во всех нормальных языках, переменные всегда имеют тип, структура классов и типы полей всегда известны заранее, и типы функций и методов, как принимаемые, так и возвращаемые, известны.
Но самое важное - код при ошибке, если эта ошибка не была предусмотрена и для неё не написана обработка заранее, никогда не должен продолжать работу в ошибочном стейте. Это наихудшее из возможных - продолжить абы-как.
А это и не математика, а ебанутая парадигма языка, родившаяся из мысли, что раз всё равно на клиенте делается, ошибки выводить некуда, значит, надо, чтобы вообще не происходило ошибок.
Ну и то, что планировался жабаскрипт чисто для визуальных эффектов изначально. Где похуй на ошибки.
Я не кодер, конечно, но вроде Ява скрипт вполне себе складывает целочисленные значения дефолтным плюсиком, если они не были объявлены как текст? Почему бабка ударилась в конкатенацию?

Потому что это прикол для неайтишников от неайтишников.

Затрахали уже по десятому кругу "смешно шутить" про неявное преобразование типов жабаскрипта.

Динамическая типизация. Новичок может напороться нечаянно.
в пайтоне это не проблема.
Если хочешь сложить два числа, просто назнаешь переменную нужным числом (x=1, y=2) и пишешь что-то типа "x+y" и получаешь нужный результат.
Хочешь соединить два символа, пишешь x='1', y='2', получаешь в "x+y" равное '12' и это текст
Спасибо за очевидное пояснение. Лично я в курсе: имею многолетнюю практику в этом языке.
Пост, как бы, про особенности другого языка, но даже если взять Python, то и он позволяет нечаянно напороться на неявное преобразование.
sambaynu sambaynu 16.11.202417:56 ответить ссылка -2.7
$9$9
В документации есть целая страница по приоритету операторов и их перегрузке. Но не многим дано читать документацию, сейчас достаточно посмотреть ролик на ютубе.

И да, в JS нет целочисленных значений:)
malebelk malebelk 16.11.202422:08 ответить ссылка -1.8
Разумеется, любую дичь можно задокументировать, и потом слать всех в документацию.
То, что при этом язык нарушает принцип наименьшей неожиданности, выдавать за фичу. Ну, потому что а хули ещё делать, не исправлять же.
Дичь -- это пытаться сложить строку и число, не приведя типов. Перегрузка операторов тоже древнее зло. Но чот на плюсы никто не ругается в мемах за это.
Потому что только в жабаскрипте это реализовано неожиданно и ебануто. И с отсутствующей типизацией это происходит в неожиданных местах. В плюсах(и ещё миллионе языков) ты можешь заранее точно знать, что с чем у тебя складывается в каждой точке кодв.
Хахаха, а он сможет 11 людям эти книги перепродать!
undefined
18 + 18 + 23.11.202400:03 ответить ссылка 0.0
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
e* \
; -s Tomasz is building cloudash.dev 1d
^ npm install esllnt-conflg-airbnb
'••'.K r
Q 31 tn 683	5 023 ¿j ‘3’-’1’=
Traceback (most recent call last) File "<pyshell#2>"1 line 1, in <mo •3-T
TypeError: unsupported operand type(s) for 'str' and s »и	ТТгТ	lJ ■ R т-^И • ■	nTiiÏÏK'H'lilH		i I 11	тш
г		П[»]|	I Г* I ■ . V Я 1 I I в	/»Il 1	хйшТ	Щ
ж		Пш	Hií»lMhHHil!	|Д7	ijTTT	[¡iff ¡ndex.js
JavaScript Moment
1	console log(018 == '018');
2	console log(017 == ‘017');
3
■ Default: node index.js
true
false » 4 in l <- false
Programmer Memes
@iammemeloper
Without a doubt, the best programming language
11:09 PM -Sep28, 2023 121.6K ¡ews
» let l = [1,2,3,4]
<- undefined
» 0 in l <- true
» "0" in l <- true
подробнее»

javascript языки программирования программирование geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор javascript programming languages programming geek

» 4 in l <- false Programmer Memes @iammemeloper Without a doubt, the best programming language 11:09 PM -Sep28, 2023 121.6K ¡ews » let l = [1,2,3,4] <- undefined » 0 in l <- true » "0" in l <- true