2019-05-07
1970
#vanilla javascript
Lukas Gisder-Dubé
1731
May 7, 2019 ⋅ 7 min read

12 tips for writing clean and scalable JavaScript

Lukas Gisder-Dubé Passionate about technology, design, startups and personal development. Bringing ideas to life at dube.io.

Recent posts:

how and when to use JavaScript arrow functions

How and when to use JavaScript arrow functions

Arrow functions have a simpler syntax than standard functions, and there are some important differences in how they behave.

Joe Attardi
Feb 17, 2025 ⋅ 5 min read
javascript is null or empty function

How to check for null, undefined, or empty values in JavaScript

In most languages, we only have to cater to null. But in JavaScript, we have to cater to both null and undefined. How do we do that?

Lewis Cianci
Feb 14, 2025 ⋅ 4 min read
MERN Stack: Overview With Examples

What is the MERN stack? Overview with examples

Discover how the MERN stack (MongoDB, Express.js, React, Node.js) enables developers to build dynamic, performant, modern websites and apps.

Nefe Emadamerho-Atori
Feb 13, 2025 ⋅ 20 min read
Leveraging Parallel Computing In Node.js

Leveraging parallel computing in Node.js

Use parallel computing in Node.js with worker threads to optimize performance, handle CPU-intensive tasks, and utilize multi-core processors.

David Omotayo
Feb 13, 2025 ⋅ 8 min read
View all posts

7 Replies to "12 tips for writing clean and scalable JavaScript"

  1. Great tips, thanks! I disagree with No 3 though. I’ve found that passing arguments as destructured objects greatly improves readibility, when declaring the function AND when calling it, ie. displayUser({ firstName, lastName, age}).

  2. Better yet, just use a Style Guide that’s much more in-depth and consistent than this blog post:

    https://github.com/airbnb/javascript

    Please delete the extra line break between the two function calls in #4.

    #3 is not a good recommendation, and #4 is a perfect example of when you should pass an object to a method or function.

    Always use spaces in conditionals:

    “`
    if(foo) // BAD

    if (foo) // GOOD
    “`

    Why not use an arrow function in #9 when everything else in the post is ES6?

    “`
    cities.forEach((city) => {

    })
    “`

    Why are there no async/await code samples in #10 that show their cleaner syntax in contrast to messy nested callbacks?

    Lastly, nearly all JS Style Guides recommend the use of semicolons, particularly in cases where indentation can get odd with switch statements and method chaining.

    A for effort, but this post should really be targeted at beginners.

  3. I agree worh most of it, except for one thing.

    Drop the console.

    So web development world and each person contributing to development created this amazing tool to debug or code and you suggest dropping it, because of selling your product.

    I find logrocket very valuable in production, but i would never lustened to this.

  4. Third point is not right in all scenarios, you can manage to declare the function argument as false in the declaration, but anyhow the sequence of passing the argument matters. It is not scalable in any of the ways.

Leave a Reply