Comments (9)
This is easy. All you have to do is drop the var:
function test(foo) {
foo = foo || false;
}
I seriously don't think this needs to be looked at.
from jshint.
Sure, it looks like a simple solution in this 2 line example, but there's actually nothing wrong with using var in this case. I see no reason why this checking can't be turned off, especially when JSure supports this option.
I'm pretty sure we don't want to make another jslint. :)
from jshint.
Why did you close the issue? Since re-declaring variables does not break any code, I don't see why can't we make it an option.
from jshint.
Oops, who closed it? I certainly didn't mean to if it was me, those damn buttons are too close to each other. I apologize if it was me.
from jshint.
I agrtee with devinus about the buttons I've almost clicked that "comment and close " myself. Odd, I only see "comment" now.
And about redeclaring, I also agree that it's better to omit var.
The warning helps because redeclaring a variable is usually a mistake. The one good reason I can think of for wanting to redeclare a variable is only for global scope. The case I am thinking of is where the identifier is declared and may be conditionally assigned but the declaration happens inside the if
's block. But I think there is already a separate issue for that.
if(typeof Hammer != "object") { var Hammer = {}; }
from jshint.
I can't think of a case where I accidentally re-declared a variable. In any case, I don't see where having the option to turn this off is a bad thing. Make it default to "on", that's fine.
And yes, your global case is a very valid yet different use case, and probably shouldn't be lumped in with this one.
While we're on it, I have cases where I look for console
and if it doesn't exist, I add a stubbed out console.log()
. This isn't an uncommon practice, especially with code that's in development or with internal tools. Right now, it throws an "attempted to replace read-only" error.
While we're on that tangent, one nice feature with JSure is you can set error checking flags to "off", "error" or "warn". The significance of that really shows up when you use a tool like this in an automated build environment, where throwing an error will stop the build, rather than just alert the developer that there may be a problem.
Oh, and I may have accidentally closed this myself. Those buttons are way to close; I just caught my mouse hovering over "Comment and Close". :)
from jshint.
is this issue a duplicate of #14
from jshint.
Similar, but not a duplicate. At least, seems to throw a different error.
from jshint.
Implemented in master as an opt-in shadow
option.
from jshint.
Related Issues (20)
- Getting errors while adding as dev-dependancy HOT 1
- JSHint doesn't recognize bitwise operators like & | >> etc... HOT 2
- is there any kind of way to get the console log outputs using this tool? HOT 1
- can i customize the error messages generated by JSHINT? is there any locale files i can override? HOT 1
- Not work in VS Code's Terminal HOT 1
- 'fetch' is not defined. (W117) - Although it is a base feature of Node 18 (although experimental) HOT 3
- Error: JSHINT is not defined HOT 2
- False error on static property HOT 1
- W080 incorrect message for initializing const with undefined HOT 2
- jshint doesn't expect regexp literals in one-liners following if/while/for conditions, and also else HOT 3
- `jshint` breaks on experimental feature `import * as file_json from 'file.json' assert { 'type': 'json' };` HOT 11
- JShint in VScode HOT 1
- If variable is assigned but never used it should cause warning HOT 1
- esversion beyond 11 HOT 2
- Generate error on specific object properties HOT 1
- jshint 2.13.6 is not warning me about mixing tabs and spaces HOT 1
- No warnings about undefined variable when doing typeof yyy
- VSCode HOT 1
- Jshint doest trigger hint when access non exist property of an object HOT 1
- "Invalid regular expression" when /s flag is used on long RegExps
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from jshint.