Maksim
ну и вчем отличее ?
Number('2134sdf') !== parseInt('2134sdf')
Sasha
для меня говнокод - это код типа +v
А как лучше инт преобразововать в стринг? String()?
Sasha
Наоборот*
Sasha
А стринг в инт?
Sasha
parseInt()?
Sasha
Number()?
Anton
А стринг в инт?
я выше кидал ссылку на eslint
Илья
Number('2134sdf') !== parseInt('2134sdf')
эм NaN === NaN как бы да будет false
Илья
но я не понял в чем отличие ?
Maksim
Илья
будет
Shaoron
тонкие извращения
Shaoron
Может лучше isNaN?
Igor
А если буква первая то будет
Eugene
про второй параметр не забывай 🌚
Anton
речь не о параметрах и первой букве, алло
Dika
ну и вчем отличее ?
Number('123a') // NaN parseInt('123a') // 123 Number('2.5') // 2.5 parseInt('2.5') // 2 parseFloat('2.5') // 2.5
Илья
блядь точно это э "мягкое" преобразование
Maksim
про второй параметр не забывай 🌚
блять, в конкретном примере будут разные значения у Number и parseInt, что не ясного?
Peter
я вообще в число через Number(str) преобразую, чего вы все с parseInt возитесь-то
Peter
или вам так часто нужно преобразовывать из другой системы счисления?
Igor
вроде об этом речь
Igor
Или наоборот не быть униженным
Илья
с paseInt я ошибся привидя его в качестве примера даля преобразование через +
Maksim
я вообще в число через Number(str) преобразую, чего вы все с parseInt возитесь-то
parseInt (внезапно как следует из названия) нужен для того что бы распарсить число из строки, а не привести строку с числовым представлением к числу (это он тоже может, но это вырожденный случай использования, для которого есть Number())
Илья
но смысл был в том что +"1ф" равносильно Number("1ф")
Павел 💻
Ребят можете посоветовать хорошую книгу по js, с полесными упражнениями?
Nikita
так я так и не понял чем + хуже чем Number()?
Peter
не говоря о том, что + не передашь в map
Илья
ни чем в этом как бы и был прикол
Peter
это вам не хаскель с лиспом
Maksim
так я так и не понял чем + хуже чем Number()?
функционально ничем, но по рукам за такое можно получить
Nikita
так почему?
Maksim
потому что нечитабельно
Anton
Потому что незачем использовать неявное преобразование, когда в языке уже давно есть возможность явного преобразования как во всех нормальных языках программирования
Nikita
типа a = +b не читается?)
Maksim
типа a = +b не читается?)
если ты не знаешь этого хака, то что ты увидишь? как будешь это гуглить?
Anton
а неявные преобразования по сути есть легаси из старых времён, когда дизайн JS разрабатывался в перерывах между распитием пива вечером в гараже
Maksim
если ты пишешь третий день на js видимо
я такой говнокод не пишу, и если увижу на кодревью заставлю переписать в других конторах пусть пишут как хотят
Nikita
так значит мы выяснили что такая запись ничем не хуже просто некоторым не нравится
Anton
так значит мы выяснили что такая запись ничем не хуже просто некоторым не нравится
можно и тернарники делать вложенными по 10 штук, тоже ничем не хуже, просто некоторым не нравится
Nikita
при чем тут это
Maksim
так значит мы выяснили что такая запись ничем не хуже просто некоторым не нравится
возьми обфускатор и пропусти свой код через него, такая запись будет ничем не хуже оригинала
Nikita
вы впадаете в крайности
Anton
при том, что язык сейчас даёт более корректные возможности для преобразований данных
Nikita
да они вроде и раньше были
Илья
хм а какие ? я кроме этих 2х функций хз как привести к числу без велосипеда
Sasha
Ребят можете посоветовать хорошую книгу по js, с полесными упражнениями?
http://learn.javascript.ru там у каждого топика есть задачи для практики
Sasha
а что нибудь с проектами есть?
Хочешь что-то похожее на javarush, но с js?
Павел 💻
любо просто книгу
Павел 💻
типа php cookbook
Павел 💻
там язык разбрался на проектах
Sasha
а есть такое?
Я просто знаю бесплатный аналог javarush. Можно там брать идеи для проэктов
Sasha
в студию 🙂
https://hyperskill.org от степика
Peter
так значит мы выяснили что такая запись ничем не хуже просто некоторым не нравится
хуже тем, что она менее явно считывается, так же как и всякие хаки с ~indexOf
Dima
Народ кто знает как пробросить порты и а роутере на локальную машину чтобы достучаться до локального сайта???
Dima
По сути нужно сделать доступным сайт на своём сервере в мире
Nikita
как момне это лучше чем длинные равно и -1
одно из "многих" нововведений ES7 поможет не использовать indexOf например Array.prototype.includes()
Peter
как момне это лучше чем длинные равно и -1
лучше - использовать includes, так как более явно декларирует намерения. конструкция с ~ делает это максимально неявно
Павел 💻
Павел 💻
а нужен js
Nikita
за то выглядит круто)
Sasha
Я же про java и писал)
Peter
но между явным сравнением с -1 и ~ я выберу явное сравнение) или просто напишу локальный хелпер (в котором опять же будет явное сравнение)