-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.jshintrc
85 lines (66 loc) · 2.8 KB
/
.jshintrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
// Configuration globale au projet de JSHint
// =========================================
//
// (Y compris celui intégré à votre EDI/éditeur, normalement)
//
// [Liste complète des options possibles](http://www.jshint.com/docs/options/)
{
// Options de restriction
// ----------------------
// Exige des (in)égalités strictes : `===` et `!==`
"eqeqeq": true,
// Exige que les fonctions appelées avec `new` démarrent par une majuscule
// (ce qui est traditionnellement le cas pour un constructeur).
"newcap": true,
// Interdit les hacks basés sur `arguments.caller` et `arguments.calleee`
// (qui sont de toutes façons illégaux en ES5 Strict).
"noarg": true,
// Interdit l'emploi de variables non explicitement déclarées (ou fournies
// via la directive de commentaire `global`). Permet de détecter rapidement
// des fautes de frappe dans les identifiants, par exemple, ainsi que des
// fuites globales par inadvertance.
"undef": true,
// Avertit de variables ou paramètres non utilisés. Très pratique pour nettoyer
// du code mais aussi pour certains cas de fautes de frappe.
"unused": true,
// Interdit le whitespace en fin de ligne (votre éditeur devrait le nettoyer tout
// seul de toutes façons, comme avec l'option `trim_trailing_white_space_on_save`
// de Sublime Text par exemple).
"trailing": true,
// Interdit plus de 3 niveaux d'imbrication de blocs
"maxdepth": 3,
// Options de relâchement
// ----------------------
// Ces options assouplissent les restrictions mises en place par JSHint,
// qu'elles soient là par défaut ou explicitement au travers d'options.
// Autorise la présence d'expressions `debugger` dans le code.
"debug": true,
// Autorise les (in)égalités laxistes (`==`et `!=`) si l'opérande est `null`,
// afin de gérer d'un coup `null` et `undefined`, ce qui est un cas fréquent.
"eqnull": true,
// Autorise les syntaxes ES6 (`let`, `const`, `yield`, `function*`, `module`…)
"esnext": true,
// Autorise les fonctions dans les boucles ; une [IIFE](http://en.wikipedia.org/wiki/Immediately-invoked_function_expression)
// dans une boucle est une solution classique aux
// [soucis de closure asynchrone](http://www.jshint.com/docs/options/#loopfunc).
"loopfunc": true,
// Options d’environnement
// -----------------------
// Autorise `console`, `alert`, etc.
"devel": true,
// Indique un contexte potentiel Node, donc ses objets globaux (`process`,
// `Buffer`, `global`…) mais aussi le droit à des `'use strict'` globaux aux fichiers
// (puisque ce sont forcément des modules).
"node": true,
// Tuning JS Total
// ---------------
"browser": true,
"globals": {
"Backbone": true,
"Lawnchair": true,
"moment": true,
"$": true,
"_": true,
"io": true
}
}