5 Hidden JavaScript Gems for Enhanced Development

5 Hidden JavaScript Gems for Enhanced Development


JavaScript is a versatile language that offers many powerful features. However, some tricks are not widely known or commonly used. In this article, we will explore five lesser-known JavaScript gems that can help you write cleaner and more efficient code.

1. Destructuring with Defaults

Destructuring allows you to easily extract properties from objects and assign them to variables. You can also set default values for variables if the property is undefined:

  1. const person = {
  2. name: 'John Doe',
  3. age: 25,
  4. };
  6. const { name, age, country = 'USA' } = person;
  7. console.log(name, age, country); // Output: John Doe 25 USA

In this example, the `country` property is not present in the `person` object. Therefore, the default value 'USA' is assigned to the `country` variable.

2. Short-circuit Evaluation for Conditional Execution

Short-circuit evaluation can be used as a shorthand for simple conditional execution. If the first operand in the `&&` operator is truthy, the second operand will be executed. Otherwise, it will be skipped:

  1. const loggedIn = true;
  2. loggedIn && console.log('Welcome, user!');

In this example, the `console.log()` statement will only execute if `loggedIn` is truthy.

3. Using the Nullish Coalescing Operator for Default Values

The nullish coalescing operator (`??`) is a useful way to provide default values for variables that are `null` or `undefined`. Unlike the `||` operator, it doesn't consider other falsy values (like `0` or `false`) as nullish:

  1. const input = 0;
  2. const output = input ?? 42;
  3. console.log(output); // Output: 0

In this example, the `output` variable will be assigned the value of `input` (0) because it's not `null` or `undefined`.

4. Dynamic Property Names in Objects

You can use computed property names to dynamically assign keys to objects:

  1. const dynamicKey = 'age';
  2. const person = {
  3. name: 'John Doe',
  4. [dynamicKey]: 25,
  5. };
  7. console.log(person); // Output: { name: 'John Doe', age: 25 }

In this example, the `dynamicKey` variable is used to create a property name for the `person` object.

5. Array.from() for Array-like Objects

Sometimes you may encounter array-like objects, such as the `arguments` object or a `NodeList`. To convert these objects into true arrays, you can use `Array.from()`:

  1. function sum() {
  2. const numbers = Array.from(arguments);
  3. return numbers.reduce((total, num) => total + num, 0);
  4. }
  6. console.log(sum(1, 2, 3, 4, 5)); // Output: 15

In this example, the `arguments` object is converted into an array, which allows you to use array methods like `reduce()`.


These five lesser-known JavaScript tricks can help you write cleaner and more efficient code. By leveraging these techniques, you can elevate your JavaScript skills and enhance your development workflow.

We use cookies to improve your browsing experience. By continuing to use this website, you consent to our use of cookies. Learn More