{ |
|
|
// JSHint Default Configuration File (as on JSHint website) |
|
// See http://jshint.com/docs/ for more details |
|
|
|
"maxerr" : 50, // {int} Maximum error before stopping |
|
|
|
// Enforcing |
|
"bitwise" : true, // true: Prohibit bitwise operators (&, |, ^, etc.) |
|
"camelcase" : false, // true: Identifiers must be in camelCase |
|
"curly" : true, // true: Require {} for every new block or scope |
|
"eqeqeq" : true, // true: Require triple equals (===) for comparison |
|
"forin" : true, // true: Require filtering for..in loops with obj.hasOwnProperty() |
|
"immed" : false, // true: Require immediate invocations to be wrapped in parens e.g. `(function () { } ());` |
|
"indent" : 4, // {int} Number of spaces to use for indentation |
|
"latedef" : true, // true: Require variables/functions to be defined before being used |
|
"newcap" : true, // true: Require capitalization of all constructor functions e.g. `new F()` |
|
"noarg" : true, // true: Prohibit use of `arguments.caller` and `arguments.callee` |
|
"noempty" : true, // true: Prohibit use of empty blocks |
|
"nonew" : true, // true: Prohibit use of constructors for side-effects (without assignment) |
|
"plusplus" : false, // true: Prohibit use of `++` & `--` |
|
"quotmark" : "single", // Quotation mark consistency: |
|
// false : do nothing (default) |
|
// true : ensure whatever is used is consistent |
|
// "single" : require single quotes |
|
// "double" : require double quotes |
|
"undef" : true, // true: Require all non-global variables to be declared (prevents global leaks) |
|
"unused" : true, // true: Require all defined variables be used |
|
"strict" : false, // true: Requires all functions run in ES5 Strict Mode |
|
"trailing" : true, // true: Prohibit trailing whitespaces |
|
"maxparams" : false, // {int} Max number of formal params allowed per function |
|
"maxdepth" : false, // {int} Max depth of nested blocks (within functions) |
|
"maxstatements" : false, // {int} Max number statements per function |
|
"maxcomplexity" : false, // {int} Max cyclomatic complexity per function |
|
"maxlen" : 120, // {int} Max number of characters per line |
|
|
|
// Relaxing |
|
"asi" : false, // true: Tolerate Automatic Semicolon Insertion (no semicolons) |
|
"boss" : false, // true: Tolerate assignments where comparisons would be expected |
|
"debug" : false, // true: Allow debugger statements e.g. browser breakpoints. |
|
"eqnull" : false, // true: Tolerate use of `== null` |
|
"es5" : false, // true: Allow ES5 syntax (ex: getters and setters) |
|
"esnext" : false, // true: Allow ES.next (ES6) syntax (ex: `const`) |
|
"moz" : false, // true: Allow Mozilla specific syntax (extends and overrides esnext features) |
|
// (ex: `for each`, multiple try/catch, function expression…) |
|
"evil" : false, // true: Tolerate use of `eval` and `new Function()` |
|
"expr" : false, // true: Tolerate `ExpressionStatement` as Programs |
|
"funcscope" : false, // true: Tolerate defining variables inside control statements" |
|
"globalstrict" : true, // true: Allow global "use strict" (also enables 'strict') |
|
"iterator" : false, // true: Tolerate using the `__iterator__` property |
|
"lastsemic" : false, // true: Tolerate omitting a semicolon for the last statement of a 1-line block |
|
"laxbreak" : false, // true: Tolerate possibly unsafe line breakings |
|
"laxcomma" : false, // true: Tolerate comma-first style coding |
|
"loopfunc" : false, // true: Tolerate functions being defined in loops |
|
"multistr" : false, // true: Tolerate multi-line strings |
|
"proto" : false, // true: Tolerate using the `__proto__` property |
|
"scripturl" : false, // true: Tolerate script-targeted URLs |
|
"smarttabs" : false, // true: Tolerate mixed tabs/spaces when used for alignment |
|
"shadow" : false, // true: Allows re-define variables later in code e.g. `var x=1; x=2;` |
|
"sub" : false, // true: Tolerate using `[]` notation when it can still be expressed in dot notation |
|
"supernew" : false, // true: Tolerate `new function () { ... };` and `new Object;` |
|
"validthis" : false, // true: Tolerate using this in a non-constructor function |
|
|
|
// Legacy |
|
"nomen" : true, // true: Prohibit dangling `_` in variables |
|
"onevar" : false, // true: Allow only one `var` statement per function |
|
"passfail" : false, // true: Stop on first error |
|
"white" : true, // true: Check against strict whitespace and indentation rules |
|
|
|
// Custom Globals |
|
"globals" : { "jQuery": true, "console": true } // additional predefined global variables |
|
} |