Skip to content

Latest commit

 

History

History
460 lines (452 loc) · 20.6 KB

articles.md

File metadata and controls

460 lines (452 loc) · 20.6 KB

Articles in need of attention

This is a list of all the articles that should eventually be available. Articles that have been written are struck through. Articles that are in need of review (usually because they are affected by a new version of a linter) are marked with an asterisk.

If you write a new article please ensure you strike it out in this list and note the filename of the new article next to it.

JSLint

  • statement-label.md - '{a}' is a statement label
  • out-of-scope.md - '{a}' used out of scope
  • already-defined.md - '{a}' is already defined
  • subexpression-parens.md - The '&&' subexpression should be wrapped in parens
  • unexpected-assignment.md - Unexpected assignment expression
  • unused-expression.md - Expected an assignment or function call and instead saw an expression
  • avoid-arguments.md - Avoid '{a}'
  • bad-assignment.md - Bad assignment
  • bad-constructor.md - Bad constructor
  • bad-for-in-variable.md - Bad for in variable '{a}'
  • Bad invocation
  • new-side-effects.md - Do not use 'new' for side effects
  • Bad number '{a}'
  • Bad operand
  • unnecessary-function-parens.md - Do not wrap function literals in parens unless they are to be immediately invoked
  • combine-var.md - Combine this with the previous 'var' statement
  • unexpected-assignment.md - Expected a conditional expression and instead saw an assignment
  • Confusing use of '{a}'
  • Confusing regular expression
  • uppercase-constructor.md - A constructor name '{a}' should start with an uppercase letter
  • Unexpected control character '{a}'
  • dangling-underscore.md - Unexpected dangling '_' in '{a}'
  • variable-delete.md - Only properties should be deleted
  • Duplicate '{a}'
  • Empty block
  • Empty case
  • empty-class.md - Empty class
  • eval.md - eval is evil
  • Expected '{a}' and instead saw '{b}'
  • Expected '{a}' to match '{b}' from line {c} and instead saw '{d}'
  • Expected '{a}' at column {b}, not column {c}
  • Expected an id, and instead saw #{a}
  • Expected an identifier and instead saw '{a}'
  • reserved-identifier.md - Expected an identifier and instead saw '{a}' (a reserved word)
  • Expected a number and instead saw '{a}'
  • Expected an operator and instead saw '{a}'
  • Expected a positive number and instead saw '{a}'
  • Expected a small positive integer and instead saw '{a}'
  • expected-one-space.md - Expected exactly one space between '{a}' and '{b}'
  • expected-string.md - Expected a string and instead saw '{a}'
  • for-in-if.md - The body of a for in should be wrapped in an if statement
  • function-in-block.md - Function statements should not be placed in blocks
  • function-constructor.md - The Function constructor is eval
  • function-in-loop.md - Don't make functions within a loop
  • invoked-declaration.md - Function statements are not invocable
  • `function-strict.md§ - Use the function form of 'use strict'
  • Expected an identifier in an assignment and instead saw a function invocation
  • implied-eval.md - Implied eval is evil. Pass a function instead of a string
  • Unexpected 'in'. Compare with undefined or use the hasOwnProperty method
  • Insecure '{a}'
  • use-isnan.md - Use the isNaN function to compare with NaN
  • leading-decimal.md - A leading decimal point can be confused with a dot
  • Missing '{a}'
  • Missing '{a}' after '{b}'
  • Missing property name
  • Missing space between '{a}' and '{b}'
  • missing-strict.md - Missing 'use strict' statement
  • move-parens.md - Move the invocation into the parens that contain the function
  • move-var.md - Move 'var' declarations to the top of the function
  • unnamed-function.md - Missing name in function statement
  • nested-comment.md - Nested comment
  • Nested not
  • literal-constructor.md - Do not use {a} as a constructor
  • '{a}' has not been fully defined yet
  • not-a-function.md - '{a}' is not a function
  • not-a-label.md - '{a}' is not a label
  • '{a}' is out of scope
  • '{a}' should not be greater than '{b}'
  • octal-literal.md - Don't use octal '{a}'. Use '\u' instead
  • Do not mutate parameter '{a}' when using 'arguments'
  • unexpected-get-param.md - Unexpected parameter '{a}' in get {b} function
  • expected-value-param.md - Expected parameter (value) set {a} function
  • missing-radix.md - Missing radix parameter
  • read-only.md - Read only
  • Redefinition of '{a}' from line {b}
  • Reserved name '{a}'
  • regex-division.md - A regular expression literal can be confused with '/='
  • Expected to see a statement and instead saw a block
  • stopping.md - Stopping
  • Strange loop
  • Strict violation
  • dot-notation.md - ['{a}'] is better written in dot notation
  • Unexpected sync method '{a}'
  • A '<{a}>' must be within '<{b}>'
  • todo-comment.md - Unexpected TODO comment
  • Line too long
  • Too many errors
  • trailing-decimal.md - A trailing decimal point can be confused with a dot
  • unclosed-string.md - Unclosed string
  • unclosed-comment.md - Unclosed comment
  • unclosed-regex.md - Unclosed regular expression
  • Unescaped '{a}'
  • Unexpected '{a}'
  • Unexpected character '{a}'
  • unexpected-comment.md - Unexpected comment
  • Unexpected label '{a}'
  • Unexpected /property/ '{a}'
  • Unexpected space between '{a}' and '{b}'
  • Unexpected 'typeof'. Use '===' to compare directly with {a}
  • Uninitialized '{a}'
  • unnecessary-else.md - Unnecessary 'else' after disruption
  • init-undefined.md - It is not necessary to initialize '{a}' to 'undefined'
  • unnecessary-strict.md - Unnecessary 'use strict'
  • Unreachable '{a}' after '{b}'
  • Unsafe character
  • unused-var.md - Unused '{a}'
  • JavaScript URL
  • array-literal-notation.md - Use the array literal notation []
  • regex-spaces.md - Spaces are hard to count. Use {{a}}
  • Expected 'else { if' and instead saw 'else if'
  • object-literal-notation.md - Use the object literal notation {} or Object.create(null)
  • use-or.md - Use the || operator
  • use-named-param.md - Use a named parameter
  • Use spaces, not tabs
  • not-defined.md - '{a}' was used before it was defined
  • bad-declaration.md - Variable {a} was not declared correctly
  • Don't declare variables in a loop
  • weird-assignment.md - Weird assignment
  • Weird condition
  • Weird construction. Delete 'new'
  • Weird program
  • weird-relation.md - Weird relation
  • Weird ternary
  • wrap-iife.md - Wrap an immediate function invocation in parentheses
  • Wrap the /regexp/ literal in parens to disambiguate the slash operator
  • document.write can be a form of eval

JSHint

  • Bad option: '{a}'
  • Bad option value
  • Unexpected early end of program
  • missing-strict.md - Missing "use strict" statement
  • Strict violation
  • global-validthis.md - Option 'validthis' can't be used in a global scope
  • with-strict.md - 'with' is not allowed in strict mode
  • const-redeclared.md - const '{a}' has already been declared
  • const '{a}' is initialized to 'undefined'
  • overriding-constant.md - Attempting to override '{a}' which is a constant
  • regex-division.md - A regular expression literal can be confused with '/='
  • unclosed-regex.md - Unclosed regular expression
  • Invalid regular expression
  • unclosed-comment.md - Unclosed comment
  • Unbegun comment
  • Unmatched '{a}'
  • Expected '{a}' to match '{b}' from line {c} and instead saw '{d}'
  • Expected '{a}' and instead saw '{b}'
  • Missing '{a}'
  • Unexpected '{a}'
  • Missing ':' on a case clause
  • Missing '}' to match '{' from line {a}
  • Missing ']' to match '[' from line {a}
  • Illegal comma
  • Unclosed string
  • Expected an identifier and instead saw '{a}'
  • bad-assignment.md - Bad assignment
  • Expected a small integer or 'false' and instead saw '{a}'
  • Expected an operator and instead saw '{a}'
  • get-set-es5.md - get/set are ES5 features
  • Missing property name
  • Expected to see a statement and instead saw a block
  • invoked-declaration.md - Function declarations are not invocable
  • Each value should have its own case label
  • Unrecoverable syntax error
  • Too many errors
  • Invalid for each loop
  • A yield statement shall be within a generator function
  • Let declaration not directly within a block
  • A {a} cannot be named '{b}'
  • Mozilla requires the yield expression to be parenthesized here
  • Regular parameters cannot come after default parameters
  • Unclosed template literal
  • hasownproperty.md - 'hasOwnProperty' is a really bad name
  • catch-leak.md - Value of '{a}' may be overwritten in IE 8 and earlier
  • not-defined.md - '{a}' was used before it was defined
  • already-defined.md - '{a}' is already defined
  • valid-trailing-decimal.md - A dot following a number can be confused with a decimal point
  • confusing-minuses.md - Confusing minuses
  • confusing-pluses.md - Confusing pluses
  • leading-decimal.md - A leading decimal point can be confused with a dot
  • array-literal-notation.md - he array literal notation [] is preferable
  • object-literal-notation.md - The object literal notation {} is preferable
  • Unexpected use of '{a}'
  • Bad operand
  • Confusing use of '{a}'
  • use-isnan.md - Use the isNaN function to compare with NaN
  • read-only.md - Read only
  • '{a}' is a function
  • exception-assignment.md - Do not assign to the exception parameter
  • Expected an identifier in an assignment and instead saw a function invocation
  • reserved-identifier.md - Expected an identifier and instead saw '{a}' (a reserved word)
  • unnamed-function.md - Missing name in function declaration
  • Inner functions should be listed at the top of the outer function
  • Unreachable '{a}' after '{b}'
  • Label '{a}' on {b} statement
  • unused-expression.md - Expected an assignment or function call and instead saw an expression
  • new-side-effects.md - Do not use 'new' for side effects
  • unnecessary-semicolon.md - Unnecessary semicolon
  • Missing semicolon
  • unnecessary-strict.md - Unnecessary directive "{a}"
  • statement-label.md - '{a}' is a statement label
  • out-of-scope.md - '{a}' used out of scope
  • '{a}' is not allowed
  • Possible strict violation
  • Use '{a}' to compare with '{b}'
  • Bad or unnecessary escaping
  • Bad number '{a}'
  • Don't use extra leading zeros '{a}'
  • trailing-decimal.md - A trailing decimal point can be confused with a dot
  • Unexpected control character in regular expression
  • Unexpected escaped character '{a}' in regular expression
  • JavaScript URL
  • variable-delete.md - Variables should not be deleted
  • Unexpected '{a}'
  • literal-constructor.md - Do not use {a} as a constructor
  • function-constructor.md - The Function constructor is a form of eval
  • bad-constructor.md - Bad constructor
  • Weird constructorion. Is 'new' necessary?
  • missing-parens.md - Missing '()' invoking a constructor
  • avoid-arguments.md - Avoid arguments.{a}
  • document.write can be a form of eval
  • eval.md - eval can be harmful
  • not-a-function.md - Math is not a function
  • missing-radix.md - Missing radix parameter
  • implied-eval.md - Implied eval. Consider passing a function instead of a string
  • Bad invocation
  • extra-comma.md - Extra comma
  • This function has too many statements
  • too-many-params.md - This function has too many parameters
  • Blocks are nested too deeply
  • This function's cyclomatic complexity is too high
  • duplicate-key.md - Duplicate key '{a}'
  • unexpected-get-param.md - Unexpected parameter '{a}' in get {b} function
  • Expected a single parameter in set {a} function
  • Setter is defined without getter
  • redefinition-of-native.md - Redefinition of '{a}'
  • init-undefined.md - It's not necessary to initialize '{a}' to 'undefined'
  • function-in-block.md - Function declarations should not be placed in blocks
  • function-in-loop.md - Don't make functions within a loop
  • unexpected-assignment.md - Expected a conditional expression and instead saw an assignment
  • unexpected-width.md - Don't use 'with'
  • Expected a 'break' statement before '{a}'
  • debugger.md - Forgotten 'debugger' statement
  • bad-for-in-variable.md - Creating global 'for' variable
  • for-in-if.md - The body of a for in should be wrapped in an if statement
  • not-a-label.md - '{a}' is not a statement label
  • '{a}' is out of scope
  • return-conditional.md - Did you mean to return a conditional instead of an assignment?
  • Unexpected comma
  • Expected a string and instead saw {a}
  • The '{a}' key may produce unexpected results
  • function-strict.md - Use the function form of "use strict"
  • unused-var.md - '{a}' is defined but never used
  • This character may get silently deleted by one or more browsers
  • The '{a}' property is deprecated
  • '{a}' is available in ES6 (use esnext option) or Mozilla JS extensions (use moz)
  • Unexpected {a} in '{b}'
  • Script URL
  • unclosed-string.md - Unclosed string
  • Control character in string
  • octal-literal.md - Octal literals are not allowed in strict mode
  • Expected '{a}' and instead saw '{b}'
  • not-defined.md - '{a}' is not defined
  • '{a}' is only available in Mozilla JavaScript extensions (use moz option)
  • '{a}' is only available in ES6 (use esnext option)
  • bad-declaration.md - You might be leaking a variable ({a}) here
  • extending-native.md - Extending prototype of native object
  • invalid-typeof-value.md - Invalid typeof value
  • '{a}' is already defined in outer scope
  • A generator function shall contain a yield statement
  • This line contains non-breaking spaces

ESLint

  • out-of-scope.md - '{{a}}' used outside of binding context
  • Opening curly brace does not appear on the same line as controlling statement
  • Closing curly brace does not appear on the same line as the subsequent block
  • Identifier '{{name}}' is not in camel case
  • Function '{{name}}' has a complexity of {{complexity}}
  • Expected {a} return value
  • Designated 'this' alias '{{alias}}' is not assigned to the currect execution context
  • Unexpected alias '{{alias}}' for 'this'
  • dot-notation.md - ['{{a}}'] is better written in dot notation
  • Expected '{{a}}' and instead saw '{{b}}'
  • Missing function expression name
  • Expected a function {{a}}
  • for-in-if.md - The body of a for-in should be wrapped in an if statement
  • Blocks are nested too deeply
  • Line {{i}} exceeds the maximum line length
  • Too many nested callbacks
  • too-many-params.md - This function has too many parameters
  • This function has too many statements
  • uppercase-constructor.md - A constructor name should start with an uppercase letter
  • missing-parens.md - Missing '()' invoking a constructor
  • Unexpected '{{name}}'
  • array-literal-notation.md - The array literal notation [] is preferrable
  • Unexpected use of '{{operator}}'
  • avoid-arguments.md - Avoid arguments.{{property}}
  • catch-leak.md - Value of '{{name}}' may be overwritten in IE 8 and earlier`
  • extra-comma.md - Trailing comma
  • unexpected-assignment.md - Expected a conditional expression and instead saw an assignment
  • Unexpected console statement
  • Unexpected constant condition
  • Unexpected control character in regular expression
  • debugger.md - Unexpected 'debugger' statement
  • variable-delete.md - Variables should not be deleted
  • regex-division.md - A regular expression literal can be confused wtih '/='
  • duplicate-key.md - Duplicate key '{{key}}'
  • unnecessary-else.md - Unexpected 'else' after 'return'
  • empty-class.md - Empty class
  • Unexpected label {{l}}
  • Empty {{a}} statement
  • Use '===' to compare with 'null'
  • eval.md - eval can be harmful
  • exception-assignment.md - Do not assign to the exception parameter
  • extending-native.md - {{a}} prototype is read only, properties should not be added
  • Redundant double negation in {{a}}
  • Gratuitous parentheses around expression
  • unnecessary-semicolon.md - Unnecessary semicolon
  • unnecessary-strict.md - Unnecessary 'use strict'
  • Multiple 'use strict' directives
  • Expected a "break" statement before "{{code}}"
  • leading-decimal.md - A leading decimal point can be confused with a dot
  • trailing-decimal.md - A trailing decimal point can be confused with a dot
  • '{{name}}' is a function
  • function-strict.md - Use the function form of "use strict"
  • implied-eval.md - Implied eval. Consider passing a function instead of a string
  • Reserved name 'iterator'
  • statement-label.md - Found identifier with same name as label
  • Unexpected labeled statment
  • Unexpected label in {{a}} statement
  • Block is nested inside another block
  • function-in-loop.md - Don't make functions within a loop
  • Do not mix 'require' and other declarations
  • Do not mix core, module, file and computed requires
  • escaped-eol.md - Multiline support is limited to browsers supporting ES5 only
  • read-only.md - {{a}} is a read-only native object
  • redefinition-of-native.md - Redefinition of '{{nativeObject}}'
  • The 'in' expression's left operand is negated
  • Do not nest ternary expressions
  • function-constructor.md - The Function constructor is eval
  • object-literal-notation.md - The object literal notation {} is preferrable
  • literal-constructor.md - Do not use {{fn}} as a constructor
  • new-side-effects.md - Do not use 'new' for side effects
  • not-a-function.md - '{{name}}' is not a function
  • Don't use octal '{{octalDigit}}'. Use '\u' instead
  • Octal literals should not be used
  • Use path.join() or parth.resolve() instead of + to create paths
  • unexpected-increment.md - Unary operator '{{a}}' used
  • Don't use process.exit(); throw an error instead
  • The 'proto' property is deprecated
  • already-defined.md - '{{a}}' is already defined
  • regex-spaces.md - Spaces are hard to count
  • return-conditional.md - Return statement should not contain assignment
  • Script URL is a form of eval
  • weird-relation.md - Comparing to itself is potentially pointless
  • Shadowing of global property "{{a}}"
  • {{a}} is already declared in the upper scope
  • Trailing whitespace before semicolon
  • Spaced function application is not allowed
  • Unexpected comma in middle of array
  • unexpected-sync.md - Unexpected sync method
  • Ternary operator used
  • init-undefined.md - It's not necessary to initialize '{{name}}' to undefined
  • not-defined.md - '{{name}}' is not defined
  • '{{name}}' is read only
  • dangling-underscore.md - Unexpected dangling '_' in '{{a}}'
  • Found unexpected statement after a {{type}}
  • unused-expression.md - Expected an assignment or function call and instead saw an expression
  • unused-var.md - {{var}} is defined but never used
  • not-defined.md - {{a}} was used before it was defined
  • unexpected-with.md - Unexpected use of 'with' statement
  • unnecessary-function-parens.md - Wrapping non-IIFE function literals in parens is unnecessary
  • Expected literal to be on the right side of {{a}}
  • Combine this with the previous 'var' statement
  • Non-quoted property '{{key}}' found
  • use-quote.md - String must use {{a}}
  • missing-radix.md - Missing radix parameter
  • Invalid radix parameter
  • Missing semicolon
  • Extra semicolon
  • Variables within the same declaration block should be sorted alphabetically
  • missing-strict.md - Missing "use strict" statement
  • use-isnan.md - Use the isNaN function to compare with NaN
  • JSDoc type missing brace
  • JSDoc syntax error
  • Missing JSDoc parameter type for '{{name}}'
  • Missing JSDoc parameter description for '{{name}}'
  • Duplicate JSDoc parameter '{{name}}'
  • Unexpected @{{a}} tag; function has no return statement
  • Missing JSDoc return type
  • Missing JSDoc return description
  • Use @{{name}} instead
  • Missing JSDoc @returns for function
  • Expected JSDoc for '{{name}}' but found '{{name}}'
  • Missing JSDoc for parameter '{{name}}'
  • wrap-iife.md - Wrap an immediate function invocation in parentheses
  • Wrap only the function expression in parens
  • move-parens.md - Move the invocation into the parens that contain the function
  • Wrap the /regexp/ literal in parens to disambiguate the slash operator