Why does JSHint throw a warning if I am using const? Why does JSHint throw a warning if I am using const? javascript javascript

Why does JSHint throw a warning if I am using const?


When relying upon ECMAScript 6 features such as const, you should set this option so JSHint doesn't raise unnecessary warnings.

/*jshint esnext: true */ (Edit 2015.12.29: updated syntax to reflect @Olga's comments)

/*jshint esversion: 6 */const Suites = {    Spade: 1,    Heart: 2,    Diamond: 3,    Club: 4};

This option, as the name suggests, tells JSHint that your code uses ECMAScript 6 specific syntax.http://jshint.com/docs/options/#esversion

Edit 2017.06.11: added another option based on this answer.

While inline configuration works well for an individual file, you can also enable this setting for the entire project by creating a .jshintrc file in your project's root and adding it there.

{  "esversion": 6}


You can add a file named .jshintrc in your app's root with the following content to apply this setting for the whole solution:

{    "esversion": 6}

James' answer suggests that you can add a comment /*jshint esversion: 6 */ for each file, but it is more work than necessary if you need to control many files.


I got this same warning when using an export statement. I'm using VS Code and used a similar approach to Wenlong Jiang's solution.

  1. User Settings

  2. JSHint config

  3. "jshint.config": {} (Edit)

  4. Use double quotes when specifying "esversion"

    Or copy this snippet into User Settings:

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

Creating a .jshintrc file isn't necessary if you want to configure the global jshint settings for your editor