Following JavaScript best practices can aid in faster page loads and improved performance, as well as improved code readability and ease of maintenance and debugging. Carefully written code can also help to avoid errors and security issues.
01. Avoid Global Variables
- Minimize the use of global variables.
- This includes all data types, objects, and functions.
- Global variables and functions can be overwritten by other scripts.
- Use local variables instead and learn how to use closures.
02. Always Declare Local Variables
- Local variables should be declared for all variables used in a function.
- If the var, let, or const keyword is not used when declaring a local variable, the local variable will be converted to a global variable.
03. Declarations on Top
All declarations should be placed at the beginning of each script or function as good coding practice.
This will result in:
- A cleaner code
- Give users a single location to look for local variables.
- Make it simpler to avoid undesirable (implied) global variables.
- Reduce the likelihood of unwanted re-declarations.
4. Initialize Variables
When you declare variables, you should always initialize them.
This will:
- Provide cleaner code
- Provide a single location for variable initialization.
- Avoid using undefined values
05. Declare Arrays with const
Declaring arrays with const prevents accidental type changes
06. Don’t Use new Object()
- Instead of new String(), use “”.
- Instead of new Number(), use 0
- Instead of using new Boolean(), use false
- Rather than new Object(), use {}
- Instead of using new Array(), use [].
- Instead of using new RegExp(), use /()/.
- Instead of using new Function(), use function (){}.
07. Beware of Automatic Type Conversions
- JavaScript is a loosely typed language.
- A variable can hold any type of data.
- A variable’s data type can be changed.
08. Use === Comparison
- Prior to comparison, the == comparison operator converts (to types that match).
- The === operator requires a value and type comparison
09. Use Parameter Defaults
- When a function is called with an unspecified argument, the value of the unspecified argument is set to undefined.
- Undefined values can cause your code to fail. Assigning default values to arguments is a good practice.
10. End Your Switches with Defaults
Always include a default at the end of your switch statements. Even if you believe it is unnecessary.
11. Avoid Number, String, and Boolean as Objects
- Numbers, strings, and Booleans should always be treated as primitive values, not as objects.
- Declaring these types as objects slows execution and has negative side effects
12. Avoid Using eval()
- The eval() function is used to run text as code. But in most cases, it should not be necessary to use it.
- It also poses a security risk because it allows arbitrary code to be executed.