1. JavaScript / Говнокод #23630

    0

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    function isInteger(i) {
    	if(i > ~~i == false) return false
    	alert("тест "+(i > ~~i))
    	return true
    }
    alert( isInteger(1) ) // true
    alert( isInteger(1.5) ) // false
    alert( isInteger(-0.5) ) // false
    
    //Второй вариант с багом
    function isInteger(i) {
    	if(i > ~~i) return false
    	alert("тест "+(i > ~~i))
    	return true
    }
    alert( isInteger(1) ) // true
    alert( isInteger(1.5) ) // false
    alert( isInteger(-0.5) ) // false //нихуя не фалсе

    Это пиздец нахуй, смотрите как легко налажать в js

    Запостил: fuckercoder, 31 Декабря 2017

    Комментарии (39) RSS

    • Смотрите, как легко налажать в C:
      int isInteger(double i) {
          if(i > round(I)) return 0;
          return 1;
      }


      Кстати, как быть с '12', {valueOf: () => 6} и особенно с {valueOf: () => Math.random() ? 1 : 1.5} ?

      И да, последний вопрос меня интересует в контексте чистых функций. Функции из поста были вроде бы чистыми.
      var x = {valueOf: () => Math.random() ? 1 : 1.5};
      var wholenesses = [x,x,x,x,x,x,x,x,x].map(isInteger);

      Но прогон через isInteger одного и того же значения x даст разные значения в wholenesses. Что случилось?
      Испортило ли такое отравленное значение как x чистоту функции? Чистота функции определена только для выражений, которые сами чисты? Чистые функции в языках, позволяющих такую питушню, не могут существовать?

      Как классифицируются f1, f2, f3?
      function f1(x){
          return x*x;
      } // f1({valueOf: Math.random})
      function f2(f, x){
          return f(x);
      } // f2(Math.random, 2)
      function f3(x){
          return Math.random;
      } // f3(2)


      Кстати, что с чистотой map в python 3? Математически она возвращает одно и то же, но это одно и то же такое хрупкое и вычислительно зависимое.

      А что говорится про чистоту функций, возвращающими сложные объекты. Если функция решила вернуть не сам объект, а его копию? Как решение о чистоте соотносится с доступностью в языке программирования сравнения ссылок?
      Ответить
      • Чистая функция должна звать только чистые функции. К сожалению, в большинстве языков невозможно застраховаться от нечистого параметра. Остаётся только документировать это требование и надеяться на разумность программиста...

        > сравнение ссылок
        Разрешая сравн
        Ответить
        • > Разрешая сравн
          Комментарий был покусан рецидивистами?
          Ответить
          • Сорри, устал от сенсорной клавы, рейджквитнул и пошёл спать дальше.

            Разрешая сравнение ссылок ты добавляешь объекту новый неявный атрибут - адрес. Ну и получается, что функция, возвращающая ссылку всегда нечиста (т.к. аллокатор нечист).
            Ответить
            • Печально выходит. Функцию жалко.
              Ответить
            • А с чего ты сидишь?
              Ответить
              • Galaxy S7
                Ответить
                • С приложения какого или просто ебанутый?
                  Ответить
                  • Да обычный хром под ведро, если ты про это.
                    Ответить
                    • Значит ебанутый. Или у тебя хром по другому работает.
                      В маленьких тредах еще как-то можно, а политоту лучше не открывать.
                      Ответить
                    • У тебя есть такая херня, что браузер через секунд 30 загрузки страницы просто ее закрывает? Дико бесит когда читаешь какую-то простыню и посреди чтения тебе страницу убивает.
                      Размер щревта там менять можно?
                      А еще некоторые пидорасы имеют адаптивный дизайн вместо страницы для мобилок. Из-за подгрузки рекламных шкритпов все постоянно тормозит и иногда закрывается страница. Приходится жс отключать чтобы пользоваться. Баш например грешит.
                      Ответить
                      • > через секунд 30 загрузки страницы просто ее закрывает
                        На старом телефоне была такая фигня. Похоже на out of memory, потому что после перезапуска браузера иногда всё-таки открывало и нормально работало.

                        > Размер щревта там менять можно
                        Неа, только зумить и катать экран туда-сюда. На ГК в больших тредах из-за этого остаётся очень маленькое окошечко под коммент, и писать туда что-то большое - тот ещё пиздец...

                        > Значит ебанутый.
                        Есть немного.
                        Ответить
                        • Кстати, сракер там не хочет интегрировать в сайт панель бебекодов и читату выделенного?

                          > Неа, только зумить и катать экран туда-сюда.
                          А какого собсно хуя этой фичи нет?

                          >Есть немного.
                          Но не в хорошем смысле.

                          > Неа, только зумить и катать экран туда-сюда. На ГК в больших тредах из-за этого остаётся очень маленькое окошечко под коммент, и писать туда что-то большое - тот ещё пиздец...
                          Именно это я и имел в виду. Как это открывается? http://govnokod.ru/19910
                          Ответить
                          • > http://govnokod.ru/19910
                            Открылось за несколько секунд. Вполне юзабельно :3

                            > А какого собсно хуя этой фичи нет?
                            А х.з. Видимо специально давят на веб-разрабов, чтобы они сами сайт под мобилы адаптировали. Смена щрефта же вёрстку пидорасит, её даже в десктопных браузерах спрятали...
                            Ответить
                            • > Смена щрефта же вёрстку пидорасит,
                              Шо?

                              > её даже в десктопных браузерах спрятали...
                              прыщелис: вид-масштаб-[v] только текст. Но! СУКА! Прыщелис по умолчанию подтягивает масштаб из настройки винды (размер щревта) и масштабирует и картинки. Из-за этого они расплываются. Что за говно-то?
                              Ответить
                          • В самой глубине ветки выглядит примерно так: http://rgho.st/8M42zsYFy
                            Ответить
                            • хуита же. Кстати, vnc на комп и там в браузере сидеть не пробовал?
                              Ответить
                              • Пробовал когда-то, но vnc/rdp на маленьком экране - это тот ещё пиздец.
                                Ответить
                                • Не, ну никто тебе и не говорил что на маленьком экране можно вместить большой.
                                  Кстати, у меня тут сканер не на столе с компом (не влазит), и чтобы поменять лист, а потом отсканировать, нужно поворачиваться или вставать. Самое простое решение что я нашел, чтобы не идти к компу - нет, не кнопка на сканере, она работает как бык поссал, а VNC на планшете с зумом нужной кнопки.

                                  Да и вообще, любое управление компом скорее всего будет проще всего сделать с VNC или аналогами. Управление плеером например. Еще бы в VNC можно было мультимедиа кнопки нажимать.
                                  Ответить
                                  • Vanished
                                    Ответить
                                  • Ответственно заявляю: VNC - говно и не нужен при существующем RDP

                                    P.S. Так. Я не понял. Какого хуя отвечает не туда?
                                    P.P.S. Нет, это я долбоеб, все туда
                                    Ответить
                                    • Рдп это же эксклюзивный доступ, что не всегда удобно.
                                      Ответить
                                      • Все остальные плюсы перекрывают этот незначительный минус, особенно когда комп лично твой
                                        Ответить
                                        • Когда комп стоит в 2х метрах то терять доступ плохо.
                                          Ответить
                                    • Чем лучше и где взять клиент на ведро?
                                      Ответить
                                      • Клиент на ведро вполне официальный от мелкософта есть
                                        А лучше он тем, что не тормозит блять
                                        Все до единой реализации внц умудрялись тормозить в лане, когда по рдп с мобилы! через ссш-туннель!! через 3g!!! оно почти без нареканий работает
                                        Ответить
                                        • Почему он не тормозит если принцип там один и тот же? И чем небольшие тормоза мешают на планшете где один хер только часть экрана видно?
                                          Ответить
                                          • У RDP нормальный кодек
                                            Алсо я пользуюсь RDP с мобилы и ничего не увеличиваю, мне и так нормально
                                            Ну и да, на VNC тормоза не небольшие, а пиздец
                                            Ответить
                                            • Ну паузу в плеере можно нажать и так.
                                              Ответить
                                              • Мне одно время приходилось довольно много и часто сидеть по удаленке за моим домашним компом и тут я бы вообще хуй знает как жил без RDP
                                                Ответить
                                                • Смутно помню, но по-моему тоже RDP лучше был. Но тут речь про планшет/смарт.
                                                  Ответить
                                          • Позволю себе немного некропостинга
                                            > принцип там один и тот же
                                            Нет, не тот же
                                            VNC по сути фоткает экран, RDP эмулирует видеоадаптер
                                            То, как это сказывается на пирфомансе, и так понятно, плюс позволяет прикрутить (возможно, когда-то даже появится подобное) нормальное 3D-ускорение, ну и другие плюшки навроде remotefx.
                                            Хотя минусы тоже есть: косоебит некоторые приложения, в частности на жабе, плюс некоторые 3д-приложения отказываются запускаться, не найдя подходящее нвиде или амуде
                                            Ответить
                      • З.Ы. Лол, походу у страйкера лочка на базе висит пока SMTP отправляет письмо. Сток зависает на это время.
                        Ответить

    Добавить комментарий