![][1]
Javascript – это странный и прекрасный язык, который позволяет писать безумный, но все еще валидный код. Он пытается помочь нам, конвертируя одни штуки в другие в зависимости от того, как мы работаем с ними.
Если добавить строку к чему-то, то он допустит, что мы хотим получить текст, поэтому сконвертирует все в строку.
Если мы добавляем префикс "плюс" или "минус", то он допустит, что нам нужно числовое представление и сконвертирует строку в число, если сможет.
Если мы отрицаем что-то, то он сконвертирует это в булево значение.
Мы можем использовать эти особенности языка и создать немного магии со всего-лишь шестью символами: `[`,`]`,`(`,`)`,`!` и `+`. Если вы читаете это на десктопе, то можете открыть консоль в вашем браузере (developer tools, например) и запускать код. Просто копируйте любой код из примеров ниже в консоль, и он должен исполнится и вернуть true.
Давайте начнем с простого. Вот главные правила:
1. Префикс `!` конвертирует в Boolean
2. Префикс `+` конвертирует в Number
3. Добавление `[]` конвертирует String
Вот они в действии:
![] === false
+[] === 0
[]+[] === ""
[Читать дальше →][2]
[1]:
https://habrastorage.org/files/fd0/fba/e92/fd0fbae92e7c4775b6bf06d758ee24ae.jpg
[2]:
https://habrahabr.ru/post/312172/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut