mirror of
https://github.com/frappe/frappe_docker.git
synced 2026-06-21 15:25:09 +00:00
42 lines
1,011 B
JavaScript
42 lines
1,011 B
JavaScript
/*!
|
|
* Chai - getPathValue utility
|
|
* Copyright(c) 2012-2014 Jake Luer <jake@alogicalparadox.com>
|
|
* @see https://github.com/logicalparadox/filtr
|
|
* MIT Licensed
|
|
*/
|
|
|
|
var getPathInfo = require('./getPathInfo');
|
|
|
|
/**
|
|
* ### .getPathValue(path, object)
|
|
*
|
|
* This allows the retrieval of values in an
|
|
* object given a string path.
|
|
*
|
|
* var obj = {
|
|
* prop1: {
|
|
* arr: ['a', 'b', 'c']
|
|
* , str: 'Hello'
|
|
* }
|
|
* , prop2: {
|
|
* arr: [ { nested: 'Universe' } ]
|
|
* , str: 'Hello again!'
|
|
* }
|
|
* }
|
|
*
|
|
* The following would be the results.
|
|
*
|
|
* getPathValue('prop1.str', obj); // Hello
|
|
* getPathValue('prop1.att[2]', obj); // b
|
|
* getPathValue('prop2.arr[0].nested', obj); // Universe
|
|
*
|
|
* @param {String} path
|
|
* @param {Object} object
|
|
* @returns {Object} value or `undefined`
|
|
* @name getPathValue
|
|
* @api public
|
|
*/
|
|
module.exports = function(path, obj) {
|
|
var info = getPathInfo(path, obj);
|
|
return info.value;
|
|
};
|