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

    −49

    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
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    'use strict';
    
    // Получаем все возможные статусы http
    const {STATUS_CODES} = require('http');
    
    class HttpError extends Error
    {
        constructor(statusCode = 500, statusMessage) {
    
            // И вау
            if (!STATUS_CODES[statusCode]) {
                throw new Error(`Wrong http code: ${statusCode}`);
            }
    
            statusMessage || (statusMessage = STATUS_CODES[statusCode]);
    
            super(statusMessage);
    
            Object.defineProperty(this, 'statusCode', {get: () => statusCode});
        }
    }
    
    module.exports = HttpError;

    Бросаем ошибку в конструкторе ошибки.

    Запостил: damir, 29 Августа 2016

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

    • показать все, что скрытоЗакупорьте мне очко, дует...
      Ответить
    • Мы добавили ошибку в конструктор твоей ошибки, чтобы ты мог бросать ошибку, когда бросаешь ошибку...
      Ответить
    • ES6 пришёл в наш дом...
      Пи будет негодовать. Кажется, я понял. Его негативное отношение к ES тем больше, чем больше разница в версии ES с его ником.
      Ответить
      • показать все, что скрытоСтоит отметить, что, если ехать в секс-тур по Камеруну, то языкового барьера между мною и тамошними шоколадными зайцами не возникнет, ибо говорят там по-английски; а уж я с мало-мальским знанием английского языка завсегда смогу прокричать "Deeper, deeper!", верно?
        Ответить
    • 418
      Ответить

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