var baseFunctions = require('./_baseFunctions'), | |
keys = require('./keys'); | |
/** | |
* Creates an array of function property names from own enumerable properties | |
* of `object`. | |
* | |
* @static | |
* @since 0.1.0 | |
* @memberOf _ | |
* @category Object | |
* @param {Object} object The object to inspect. | |
* @returns {Array} Returns the function names. | |
* @see _.functionsIn | |
* @example | |
* | |
* function Foo() { | |
* this.a = _.constant('a'); | |
* this.b = _.constant('b'); | |
* } | |
* | |
* Foo.prototype.c = _.constant('c'); | |
* | |
* _.functions(new Foo); | |
* // => ['a', 'b'] | |
*/ | |
function functions(object) { | |
return object == null ? [] : baseFunctions(object, keys(object)); | |
} | |
module.exports = functions; |