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

    +158

    1. 1
    Function.prototype.apply.call(window.alert, window, ['alert'])

    А я чё? Я ничё...

    Запостил: AjiTae, 01 Января 2015

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

    • троллейбус-из-хлеба.jpg
      Ответить
      • Есть по крайней мере один случай, в котором такая конструкция может понадобиться.)
        Подсказка: случай уже почти не актуальный.
        Ответить
        • если усердно сосать из пальца, то почему бы и нет?
          Ответить
        • Я видел только вызовы конструктора от хрен-знает-какого числа аргументов, хранящихся в массиве: http://stackoverflow.com/questions/1606797/.
          Там и пляски с контекстом, и таинственные заклинания с bind.apply, и функции в функциях в функциях на выбор в зависимости от степени упоротости программиста.

          А вообще, этот случай - собеседование:
          - И наш контрольный вопрос: что делает Function.prototype.apply.call(window.ale rt, window, ['alert'])?
          - Мозолит мне глаза. Давайте, я лучше это перепишу.
          - Спасибо, приходите завтра в 8:00. Вон там за столом вместо алоэ будете сидеть. А алоэ, вы не волнуйтесь, к секретарю переедет.
          Ответить
          • Глупая шутка.
            Ответить
            • Вам к секретарю пришлось переехать, из-за этого так расстраиваетесь?
              Ответить
              • Я не практикую однополый секс, тем более, на работе.
                служебные романы запрещены.
                Ответить
        • Что за случай то?
          Ответить
          • В ie<9 некоторые дефалтные глобальные функции(alert, scrollTo, ...) внезапно не function, а object.)
            Ответить
    • Function.prototype.call.call(window.aler t, window, 'alert')
      о_О
      Ответить

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