ESLint plugin for ES5 users.
ESLint plugin for ES5 users.
Sometimes someone doesn’t want to or can’t use Babel.
Even if you support modern browsers or node.js, JS engines have bugs
like broken block-scoping.
Maybe you only want to forbid usage of for-of
in your project.
If this concerns you, this plugin should help you.
npm install --save-dev eslint-plugin-es5
Add the plugin to your .eslintrc
:
{
"plugins": [
"es5"
]
}
And then any of the rules listed below like this:
{
"rules": {
"es5/no-arrow-functions": "error"
}
}
Also you can extend one of presets:
{
"extends": [
"eslint:recommended",
"plugin:es5/no-es2015"
]
}
Available presets:
plugin:es5/no-es2015
: Forbid ES2015 usage.plugin:es5/no-es2016
: Forbid ES2016 usage.es5/no-es6-methods
Forbid ES2015 methods for Array
and String
es5/no-es6-static-methods
Forbid ES2015 static methods for Array
, Math
, Number
, and Object
. You can enable specific functions: "es5/no-es6-static-methods": ["error", { exceptMethods: ["Math.imul"] }]
es5/no-arrow-functions
es5/no-binary-and-octal-literals
es5/no-block-scoping
: Forbid let
and const
declarations. You can enable them using options: "es5/no-block-scoping": ["error", { "let": true }]
es5/no-classes
: Forbid ES2015 classes.es5/no-computed-properties
: Forbid computed properties.es5/no-default-parameters
: Forbid default parameters.es5/no-destructuring
es5/no-exponentiation-operator
: Forbid exponentiation operator a ** b
usage.es5/no-for-of
: Forbid for-of
statements.es5/no-generators
: Forbid generators usage.es5/no-modules
: Forbid ES2015 modules usage.es5/no-object-super
: Forbid super
/super.foo()
calls.es5/no-rest-parameters
: Forbid rest parameters.es5/no-shorthand-properties
es5/no-spread
es5/no-template-literals
es5/no-typeof-symbol
: Forbid typeof foo === 'symbol'
checks.es5/no-unicode-code-point-escape
es5/no-unicode-regex
: Forbid Unicode support in RegExp.