I have a javascript variable with the following structure
var recurse = {
  level_0: [
    { 
      level_1 : [
        { 
          level_2_0 : [
            {
              level_3_0: {
                valid: true,
                available: false
              }
            }, {
              level_3_1 : {
                valid: true,
                available: true
              }
            }]
        }, { 
          level_2_1 : [
            {
              level_3_0: {
                valid: true,
                available: false
              }
            }, {
              level_3_1 : {
                valid: true,
                available: true
              }
            }]
        }]
    }]
}
Final required output structure
var recurse = {
  name: "level_0",
  property: [
    {
      name: "level_1",
      property: [
        {
          name: "level_2_0",
          property: [
            {
              name: "level_3_0",
              property: {
                valid: true,
                available: false
              }
            }, {
              name: "level_3_1",
              property: {
                valid: true,
                available: true
              }
            }]
        }, {
          name: "level_2_1",
          property: [
            {
              name: "level_3_0",
              property: {
                valid: true,
                available: false
              }
            }, {
              name: "level_3_1",
              property: {
                valid: true,
                available: true
              }
            }]
        }]
    }] 
}
Facing problem with cloning and updating the structure for this nested object using generic methods. How can I achieve the required final object structure using simple javascript or reactjs properties.
Which is the most appropriate method to clone a javascript object?
Note: the object names- level_0, level_1 level_2_0 could be random or dynamic.
 
     
    