DEV Community

Cover image for JavaScript Best Practices.
Harshana Jayaweera
Harshana Jayaweera

Posted on • Edited on

2 1 1 1 1

JavaScript Best Practices.

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.

Image description

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

Image description

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 (){}.

Image description

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.

Image description

08. Use === Comparison

  • Prior to comparison, the == comparison operator converts (to types that match).
  • The === operator requires a value and type comparison

Image description

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.

Image description

10. End Your Switches with Defaults

Always include a default at the end of your switch statements. Even if you believe it is unnecessary.

Image description

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

Image description

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.

Image description

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read full post →

Top comments (0)

nextjs tutorial video

Youtube Tutorial Series

So you built a Next.js app, but you need a clear view of the entire operation flow to be able to identify performance bottlenecks before you launch. But how do you get started? Get the essentials on tracing for Next.js from @nikolovlazar in this video series 👀

Watch the Youtube series

👋 Kindness is contagious

Discover a treasure trove of wisdom within this insightful piece, highly respected in the nurturing DEV Community enviroment. Developers, whether novice or expert, are encouraged to participate and add to our shared knowledge basin.

A simple "thank you" can illuminate someone's day. Express your appreciation in the comments section!

On DEV, sharing ideas smoothens our journey and strengthens our community ties. Learn something useful? Offering a quick thanks to the author is deeply appreciated.

Okay