Подавить "ожидаемый идентификатор и вместо этого увидел "default" (зарезервированное слово)` в JSLint с Мангустом
Я использую jshint
для проверки моих файлов JavaScript.
на стороне сервера я использую node.js с Мангустом. В Мангусте меня поощряют писать схемы таким образом, как:
var UserSchema = new mongoose.Schema({
firstname : { type: String, default: '' }
});
при запуске пылеобразования, я получаю ошибку:
Expected an identifier and instead saw 'default' (a reserved word).
есть ли способ подавить эту ошибку? Я действительно предпочел бы такое поведение, а не писать:
var UserSchema = new mongoose.Schema({
firstname : { type: String, "default": '' }
});
2 ответов
вы также можете использовать опцию" es5", чтобы отключить это от происходящего.
см.: http://jslinterrors.com/expected-an-identifier-and-instead-saw-a-a-reserved-word/
default
действительно зарезервированное слово в JavaScript (https://developer.mozilla.org/en/JavaScript/Reference/Reserved_Words). Хотя технически вы можете использовать default в имени свойства объекта без каких-либо проблем, у вас могут возникнуть проблемы с этой нотацией, если ваш интерпретатор строг (например, lint).
самый простой способ двигаться вперед: исправить проблему, добавив кавычки. Линт больше не будет ныть. Код на два символа длиннее, но что с того - проверка проходит и вы гарантированно не иметь проблем из-за использования зарезервированное ключевое слово.