Deklaracje funkcji nie powinny być umieszczane w blokach. Użyj wyrażenia funkcji lub przenieś instrukcję na górę funkcji zewnętrznej

Mam następujący kod:

if (typeof console === "object" && typeof console.error === "function") {
    function e(msg) {"use strict"; console.info(msg);}
}

Dla którego jsLint podaje następujący błąd:

Instrukcje funkcyjne nie powinny być umieszczane w blokach. Użyj wyrażenia funkcji lub przenieś instrukcję na górę funkcji zewnętrznej.

Dlaczego podaje ten błąd i co to oznacza?

questionAnswers(2)

yourAnswerToTheQuestion