在带有猫鼬的 JSLint 中抑制“预期标识符,而是看到”默认“(保留字)”

Suppress `Expected an identifier and instead saw 'default' (a reserved word)` in JSLint with Mongoose

本文关键字:预期标识符 保留字 默认 标识符 JSLint      更新时间:2023-09-26

我正在使用jshint来验证我的JavaScript文件。

在服务器端,我正在使用node.js与Mongoose。在猫鼬中,我被鼓励以这样的方式编写图式:

var UserSchema = new mongoose.Schema({
    firstname : { type: String, default: '' }
});

运行 linting 时,出现错误:

Expected an identifier and instead saw 'default' (a reserved word).

有没有办法抑制此错误?我真的更喜欢这种行为而不是写作:

var UserSchema = new mongoose.Schema({
    firstname : { type: String, "default": '' }
});

default确实是JavaScript(https://developer.mozilla.org/en/JavaScript/Reference/Reserved_Words)中的一个保留字。虽然从技术上讲,您可以在对象属性名称中使用默认值而没有任何问题,但如果解释器很严格(如 lint),则最终可能会遇到该表示法的问题。

最简单的方法:通过添加引号来解决问题。林特不会再抱怨你了。代码长了两个字符,但是什么 - linting通过,保证您不会因使用保留关键字而出现问题。

您也可以使用"es5"选项来禁用这种情况。

请参阅:http://jslinterrors.com/expected-an-identifier-and-instead-saw-a-a-reserved-word/