这是我在使用const时得到的错误:

<error line="2" column="1" severity="warning" message="&apos;const&apos; is available in ES6 (use esnext option) or Mozilla JS extensions (use moz)." source="jshint.W104" />

我的代码是这样的:

const Suites = {
    Spade: 1,
    Heart: 2,
    Diamond: 3,
    Club: 4
};

代码工作良好,只有JSHint是警告我每次。


当前回答

当依赖于ECMAScript 6特性(如const)时,您应该设置此选项,以便JSHint不会引发不必要的警告。

/*jshint esnext: true */(编辑2015.12.29:更新语法以反映@Olga的评论)

/*jshint esversion: 6 */

const Suites = {
    Spade: 1,
    Heart: 2,
    Diamond: 3,
    Club: 4
};

这个选项,顾名思义,告诉JSHint您的代码使用特定于ECMAScript 6的语法。 http://jshint.com/docs/options/#esversion

编辑2017.06.11:基于这个答案增加了另一个选项。

虽然内联配置适用于单个文件,但您也可以为整个项目启用此设置,方法是在项目根目录中创建.jshintrc文件并将其添加到根目录中。

{
  "esversion": 6
}

其他回答

如果你使用VSCode:

1.

转到首选项->设置(cmd +,) jshint类型。选项进入搜索栏 将鼠标悬停在上面,然后单击铅笔图标 它现在被附加到右边。 在options对象中添加"esversion": 6。


2.

或者简单地添加到您的用户设置:

"jshint.options": {
    "esversion": 6
}

新的vscode设置

转到首选项->设置(cmd +,) 在搜索中输入jshint

继续执行步骤2。

我花了很长时间才修好它。每个解决方案都在谈论“设置选项”。我不知道那是什么意思。最后,我想明白了。你可以在文件/*jshint esversion: 6 */的顶部包含一个注释的输出行。

当依赖于ECMAScript 6特性(如const)时,您应该设置此选项,以便JSHint不会引发不必要的警告。

/*jshint esnext: true */(编辑2015.12.29:更新语法以反映@Olga的评论)

/*jshint esversion: 6 */

const Suites = {
    Spade: 1,
    Heart: 2,
    Diamond: 3,
    Club: 4
};

这个选项,顾名思义,告诉JSHint您的代码使用特定于ECMAScript 6的语法。 http://jshint.com/docs/options/#esversion

编辑2017.06.11:基于这个答案增加了另一个选项。

虽然内联配置适用于单个文件,但您也可以为整个项目启用此设置,方法是在项目根目录中创建.jshintrc文件并将其添加到根目录中。

{
  "esversion": 6
}

在Dreamweaver的新版本中解决了这个错误

进入“编辑->首选项->检测” 和go-to js Edit规则集 和过去的 " jshintConfig ": { “esversion”:6 }

你可以在应用程序的根目录中添加一个名为.jshintrc的文件,其中包含以下内容,以便将此设置应用于整个解决方案:

{
    "esversion": 6
}

James的回答建议您可以为每个文件添加注释/*jshint esversion: 6 */,但如果您需要控制许多文件,则工作量会比必要的多。