Open In App

How to conditionally add a member to an object using JavaScript ?

Improve
Improve
Like Article
Like
Save
Share
Report

Objects are the most important data-type and are building blocks for modern JavaScript. They are different from primitive data-types such as String, Number, Boolean, null, etc. But we can make these datatypes as objects by using the new keyword. There are two approaches to conditionally add a member to an object.

Method 1: This method involves checking if the required condition is true and based on that a property is added to the object. 

Example: In this example, if the condition is true then ‘b’ will be added as a member to ‘a’, otherwise not.

Javascript




// Define the object
var a = {};
  
// Check if the condition
// is satisfied
if (someCondition) {
      
    // Add the required 
    // property to the object 
    a.b = 7;
}


Output:

  • When condition is satisfied:

    {b: 7}
  • When condition is not satisfied:

    {}

This approach can also be used in an idiomatic way, using a ternary operator.

Example: In this example, if the condition is true then ‘b’ will be added as a member to ‘a’, otherwise not.

Javascript




var a = {
    // Use the ternary operator to check
    // if the property should be added
    // to the object
    b: (someCondition? 7 : undefined)
};


Output:

  • When condition is satisfied:

    {b: 7}
  • When condition is not satisfied:

    {b: undefined}

Method 2: This method is used to add several members to an object. The jQuery library function $.extend() is used for this method. This however does not copy undefined properties to the object.

Example:

Javascript




var newObject = $.extend({}, {
  a: conditionA ? 7 : undefined,
  b: conditionB ? 9 : undefined,
    
  // More properties as required
});


Output:

  • When the first condition is satisfied:

    {a: 7}
  • When both conditions are satisfied:

    {a: 7, b: 9}


Last Updated : 11 Jun, 2020
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads