eslint: error Parsing error: The keyword 'const' is reserved
Javascriptnode.jsEcmascript 6EslintJavascript Problem Overview
I am getting this error from ESLint:
error Parsing error: The keyword 'const' is reserved
from this code:
const express = require('express');
const app = express();
const _ = require('underscore');
I've tried removing node_modules
and reinstalling all npm packages (as suggested here), but to no avail.
Javascript Solutions
Solution 1 - Javascript
ESLint defaults to ES5 syntax-checking.
You'll want to override to the latest well-supported version of JavaScript.
Try adding a .eslintrc.json
file to your project. Inside it:
{
"parserOptions": {
"ecmaVersion": 2017
},
"env": {
"es6": true
}
}
Hopefully this helps.
EDIT: I also found this example .eslintrc.json
which might help.
Solution 2 - Javascript
you also can add this inline instead of config, just add it to the same file before you add your own disable stuff
/* eslint-env es6 */
/* eslint-disable no-console */
my case was disable a file and eslint-disable were not working for me alone
/* eslint-env es6 */
/* eslint-disable */
Solution 3 - Javascript
I used .eslintrc.js and I have added following code.
module.exports = {
"parserOptions": {
"ecmaVersion": 6
}
};
Solution 4 - Javascript
If using Visual Code one option is to add this to the settings.json file:
"eslint.options": {
"useEslintrc": false,
"parserOptions": {
"ecmaVersion": 2017
},
"env": {
"es6": true
}
}
Solution 5 - Javascript
v7.30.0
Update - ESLint With ESLint v7.30.0
, you can use latest
instead of 2017
, and it will enable the latest supported ECMAScript version.
> "ecmaVersion": "latest" always enables the latest supported ECMAScript > version in ESLint's default parser.
.eslintrc.json
"parserOptions": {
"ecmaVersion": "latest"
}
Solution 6 - Javascript
I had this same problem with this part of my code:
const newComment = {
dishId: dishId,
rating: rating,
author: author,
comment: comment
};
newComment.date = new Date().toISOString();
Same error, const is a reserved word.
The thing is, I made the .eslintrc.js from the link you gave in the update and still got the same error. Also, I get an parsing error in the .eslintrc.js
: Unexpected token ':'
.
Right in this part:
"env": {
"browser": true,
"node": true,
"es6": true
},
...
Solution 7 - Javascript
I had this issue when updating. I had an eslintrc.json in the project already as well. I just closed my project in Visual Studio Code and reopened it and the error went away. It seems VS Code caches.
Solution 8 - Javascript
In my case, it was unable to find the .eslintrc
file so I copied from node_modules/.bin to root.