Grab Wizard is a lightweight JavaScript package for navigating and retrieving values from nested data structures.
You can install the package using npm:
npm install @diotoborg/cumque-sequi
const { grabValue, grabPath } = require("@diotoborg/cumque-sequi");
var person = {
firstName: "Ali",
lastName: "Parsa",
age: 21,
info: {
address: {
city: 'New York',
zip: '10001',
}
}
};
console.log(grabValue(person, "info.city", "default value")) //=> 'New Yourk'
console.log(grabPath(person, "info.city", "default value")) //=> '.info.address.city'
You can grab value or path without select parents:
const { grabValue, grabPath } = require("@diotoborg/cumque-sequi");
var sample_1 = {
firstName: "Ali",
lastName: "Parsa",
age: 21,
info: {
address: {
city: 'New York',
zip: '10001',
}
}
};
var sample_2 = {
firstName: "Ali",
lastName: "Parsa",
age: 21,
info: {
location: {
city: 'Canada',
zip: '10001',
}
}
};
console.log(grabValue(sample_1, "info.city")) //=> 'New York'
console.log(grabPath(sample_2, "info.city")) //=> '.info.address.city'
console.log(grabValue(sample_2, "info.city")) //=> 'Canada'
console.log(grabPath(sample_2, "info.city")) //=> '.info.location.city'
console.log(grabValue(sample_2, "info.wrong","not found!")) //=> 'not found!'