Search code examples
javascriptarraysreactjsmap-function

how to map a json object into another new object


i have a payload response which goes like:

"requirementDetails": {
            "requirementId1": "A",
            "requirementId2": "B",
            "requirementId3": "C",
            "requirementId4": "D",
            "requirementId5": "E",
            "requirementId6": "",
            "requirementId7": "",
            "requirementId8": "",
            "requirementId9": "",
        }

and i want to create new array of the requirements which will not take the blank requirements using javascript map function and i want the resultant array to look like this:

data = [ "A","B","C","D","E"]

can anybody please help me out.


Solution

  • You can get all values using Object.values and then you can filter it

    const payload = {
      requirementDetails: {
        requirementId1: "A",
        requirementId2: "B",
        requirementId3: "C",
        requirementId4: "D",
        requirementId5: "E",
        requirementId6: "",
        requirementId7: "",
        requirementId8: "",
        requirementId9: "",
      },
    };
    
    const data = Object.values(payload.requirementDetails).filter(Boolean);
    
    console.log(data);