Poniższy kod:JSHint uważa zmienną wejściową "zły". Co to znaczy?
var things = {'foo':'bar'}
for (thing in things) {
console.log(thing)
}
Konsekwentnie produkuje następujący błąd w jshint:
Bad for in variable 'thing'.
ja nie rozumiem, co sprawia, że „coś” zmienna „złe” - jak widać, jest to nie są używane nigdzie indziej. Co powinienem zrobić inaczej, aby jshint nie uznał tego za błąd?
Jest globalny, co zawsze jest złe (złe, złe, złe, złe). Spróbuj 'dla (var rzecz w rzeczach)'. Nie wiem, czy to jest powód błędu :) –
JSHint chce, aby zmienne 'for in' były zdefiniowane w zasięgu lokalnym (tj. Nie w funkcji zewnętrznej). Jest to związane z tym problemem: https://github.com/jshint/jshint/issues/329 – dave1010
Ponieważ "zły" jest tak nieprecyzyjny, wysłałem żądanie ściągnięcia do jshint, aby jednoznacznie stwierdził, że zmienna jest globalna. – mikemaccana