JSLint, else и Ожидается ровно один пробел между '}' и 'else' error

Почему JSLint сообщает в коде:

function cos(a) {
    var b = 0;
    if (a) {
        b = 1;
    }
    else {
        b = 2;
    }

    return b;
}

error:

Problem at line 6 character 5: Expected exactly one space between '}' and 'else'.

Эта ошибка может можно отключить, отключив параметр Допускать беспорядочные пробелы в JSLint.

Или другими словами - почему синтаксис: } else { лучше, чем

...
}
else {
...

Google также использует синтаксис с формой } else { .

Но я не понимаю почему. Google упомянул «неявную вставку точки с запятой», но в контексте открытия {, а не закрытия.

Может ли Javascript вставлять точку с запятой после закрытия блока } из if , даже если следующим токеном является инструкция else ?

Извините, мой вопрос немного хаотичен - Я пытался думать громко .

11
задан Grzegorz Gierlik 20 April 2016 в 06:59
поделиться