JSFiddle - React, Tailwind, and code Playground

by the_archer

JavaScript

const items = [
  {
    _id: 0,
    content: 'Item 1 something',
    note: 'Some note for item 1'
  },
  {
    _id: 5,
    content: 'Item 1.1 something',
    note: 'Some note for item 1.1'
  },
  {
    _id: 1,
    content: 'Item 2 something',
    note: 'Some note for item 2',
    subItems: [
      {
        _id: 2,
        parent_id: 1,
        content: 'Sub Item 1 something',
        subItems: [{
          _id: 3,
          parent_id: 2,
          content: 'Sub Sub Item 4'
        }]
      }
    ]
  }
];

function traverse(o) {
    for (i in o) {
        if (!!o[i] && typeof(o[i])=="object") {
            if (o[i]._id == 2){
            	o.splice(i, 0, {});
              console.log(o);
            }

            traverse(o[i] );
        }
    }
    
    console.log(o);
}

traverse(items);