Updated on October 4, 2016
Don’t Use var Anymore
As the web transitions to ES6, developers will need to break their habit of using var. The toolbox now contains const and let, which should replace var in all instances.
Now that that’s out there, the real question now is which to use when? TL,DR: always use const, unless it’s a native value (number, string, null, etc.) that could change, then use let.
The Case Against var
Almost Always: const
Some have said that it obscures the code’s intent and can be confusing when compared to other languages. This is understandable but a counter could be var is just as confusing to new developers due to scope.
This one is the exception to the rule. There’s always values that will change, and when a primitive does, use let. Then why is it better than var since let sounds like the same thing?
The answer is because of block scope. var has function scope, whereas let has block scope or within curly braces. As I mentioned earlier, this cuts confusion and keeps the code from stepping on itself. This emulates the behavior of other popular languages.
Stop Using var
Due to some browsers being slow to put ES6 features in place, dropping the var habit may take some time. Node has these baked in, so go ahead and start implementing them there. This will not only make the code future-proof, but make it easier to understand. So my advice, don’t use var anymore.