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

    −49

    1. 1
    var govno = new (function(){this.some = 'shit'})()

    я хуй его знает откуда такие паттерны

    Запостил: qwemaze, 09 Февраля 2017

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

    • I decided to be a girl.
      Ответить
    • Это норма! В javascript
      Ответить
      • Норма чего?
        Ответить
        • Никто не знает, почему аватарка не всегда появляется?
          Вот и мне нашлась достойная замена. Пожалуй, можно идти на покой.
          Ответить
          • Да, я тупанул что создал учетку на говномыло, что нельзя аву сменить

            это мой акк
            Ответить
            • Жду появления 1O24--
              Ответить
              • 1025----
                Ответить
                • 1022++
                  Ответить
                  • Ой, а ведь пост-декремент возвращает число как есть.

                    Т.е. 1024---- и 1024++.
                    Ответить
                    • > а ведь пост-декремент возвращает число как есть

                      Вообще говоря, в С пост-декремент для rvalue смысла не имеет. Поскольку выражение смысла не имеет, мы можем интерпретировать его как угодно.
                      Я интерпретировал в стиле фортрана 77: 1024 — это мутабельная переменная, изначально хранящая значение 1024. После декремента 1024 содержит 1023.
                      http://everything2.com/title/Changing+the+value+of+5+in+FORTRAN
                      Ответить
                      • Омг, но как они это сделали?

                        Компилятор дооптимизировался и вынес общую пятёрку в одну переменную?
                        Ответить
                        • В Java ещё можно целенаправленно испортить кэш для чисел в интервале [-128..+127]. Как можно писа́ть на языке, в котором даже простейшую арифметику нужно проверять?
                          Ответить
                          • Кстати, случаются бракованные процессоры с поломаной арифметикой. Надо перед стартом программы прогонять набор тестов для процессора и мемчек. А еще отказываться запускаться, если по прогнозу обещают солнечную бурю.
                            Ответить
          • []Двух статистиков будет многовато, одного расстреляем.[/]
            Ответить
    • http://imgur.com/a/8qfeN
      Ответить
    • Мне кажется, автор х..й прочитал несколько статей про оптимизацию в движках JS, где, вероятно, писали, что объекты, которые являются экземплярами классов и используются как экземпляры классов, будут выглядеть как структуры (т.к. всё известно ещё в коде, предвычисленные, с константным доступом), а те, с которыми работают вольно как со словарями, - станут словарями (т.к. до запуска скрипта ничего не известно, с проверкой ключей-строк и логарифмическим доступом) и решил, что так будет быстрее.

      Инициализируйте все объекты в конструкторах, чтобы они как можно меньше менялись в дальнейшем.
      https://habrahabr.ru/post/154537/

      Создавайте объекты через конструктор. Тогда у всех объектов будет один скрытый класс. Кроме того, это чуть быстрее, чем Object.create().
      https://habrahabr.ru/post/248111/
      Ответить

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