0.2.1 • Published 8 years ago

object-deep v0.2.1

Weekly downloads
9
License
MIT
Repository
-
Last release
8 years ago

object-deep

Deep object traversal helper

get(object, path): Mixed

Alias of lodash get

set(object, path, value)

Alias of lodash set

each(object, callback, options)

Calls a callback function for each end-item found in an object

const objectDeep = require('object-deep');

const o = {
  journeys: [{
	passengers: [{
	  name: 'John'
	}, {
	  name: 'Alice'
	}]
  }, {
    passengers: [{
      name: 'Igor'
    }]
  }]
};

objectDeep.each(o, (value, path) => {
  console.log(path, value);
  /* outputs:
     journeys.0.passengers.0.name John
     journeys.0.passengers.1.name Alice
     journeys.1.passengers.0.name Igor
  */
});

eachPath(object, path, cb): void

executes a callback for every item occuring in the path

const objectDeep = require('object-deep');

const o = {
  journeys: [{
	passengers: [{
	  name: 'John'
	}, {
	  name: 'Alice'
	}]
  }, {
    passengers: [{
      name: 'Igor'
    }]
  }]
};

objectDeep.eachPath(o, 'journeys.passengers.name', (name) => {
  console.log(name); 
  /* outputs:
     John 
     Alice
     Igor
  */
})

mapPath(object, path): Array

const names = objectDeep.mapPath(o, 'journeys.passengers.name');
//John, Alice, Igor

deletePath(object, path)

objectDeep.deletePath(o, 'journeys.passengers.name');
o.journeys[0].passengers[0].should.not.contain.keys(['name']);
0.2.1

8 years ago

0.2.0

8 years ago

0.1.1

9 years ago

0.1.0

9 years ago

0.0.7

9 years ago

0.0.6

9 years ago

0.0.5

9 years ago

0.0.4

9 years ago

0.0.3

9 years ago

0.0.2

9 years ago

0.0.1

9 years ago