Initial commit
[yaffs-website] / node_modules / grunt-contrib-watch / node_modules / lodash / object / get.js
1 var baseGet = require('../internal/baseGet'),
2     toPath = require('../internal/toPath');
3
4 /**
5  * Gets the property value at `path` of `object`. If the resolved value is
6  * `undefined` the `defaultValue` is used in its place.
7  *
8  * @static
9  * @memberOf _
10  * @category Object
11  * @param {Object} object The object to query.
12  * @param {Array|string} path The path of the property to get.
13  * @param {*} [defaultValue] The value returned if the resolved value is `undefined`.
14  * @returns {*} Returns the resolved value.
15  * @example
16  *
17  * var object = { 'a': [{ 'b': { 'c': 3 } }] };
18  *
19  * _.get(object, 'a[0].b.c');
20  * // => 3
21  *
22  * _.get(object, ['a', '0', 'b', 'c']);
23  * // => 3
24  *
25  * _.get(object, 'a.b.c', 'default');
26  * // => 'default'
27  */
28 function get(object, path, defaultValue) {
29   var result = object == null ? undefined : baseGet(object, toPath(path), (path + ''));
30   return result === undefined ? defaultValue : result;
31 }
32
33 module.exports = get;