Я недавно получил комментарий к одному из моих сообщений в блоге о JSLint, в котором спрашивается, почему JSLint выдал ошибку следующего содержания:
s === "test" ? MyFunc() : MyFunc2();
Сгенерированная ошибка была:
« Ожидается назначение или функция call и вместо этого увидел выражение ".
Очевидно, что JSLint ожидает здесь присваивания, что-то вроде:
var y = (s === "test") ? MyFunc() : MyFunc2();
Но я действительно не вижу проблемы с первым примером. Действительно ли тернарные операторы должны использоваться только для назначений?
Я ничего не видел на JSLint.com , и не было ничего очевидного в книге JavaScript: Хорошие части. И та же ошибка также сообщается в вилка сообщества JSHint .
Кто-нибудь?