mirror of
https://github.com/atlanticbiomedical/biomedjs.git
synced 2025-07-02 00:47:26 -04:00
more work
This commit is contained in:
48
node_modules/lodash/object/keys.js
generated
vendored
Normal file
48
node_modules/lodash/object/keys.js
generated
vendored
Normal file
@ -0,0 +1,48 @@
|
||||
var isLength = require('../internal/isLength'),
|
||||
isNative = require('../lang/isNative'),
|
||||
isObject = require('../lang/isObject'),
|
||||
shimKeys = require('../internal/shimKeys');
|
||||
|
||||
/* Native method references for those with the same name as other `lodash` methods. */
|
||||
var nativeKeys = isNative(nativeKeys = Object.keys) && nativeKeys;
|
||||
|
||||
/**
|
||||
* Creates an array of the own enumerable property names of `object`.
|
||||
*
|
||||
* **Note:** Non-object values are coerced to objects. See the
|
||||
* [ES spec](https://people.mozilla.org/~jorendorff/es6-draft.html#sec-object.keys)
|
||||
* for more details.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category Object
|
||||
* @param {Object} object The object to query.
|
||||
* @returns {Array} Returns the array of property names.
|
||||
* @example
|
||||
*
|
||||
* function Foo() {
|
||||
* this.a = 1;
|
||||
* this.b = 2;
|
||||
* }
|
||||
*
|
||||
* Foo.prototype.c = 3;
|
||||
*
|
||||
* _.keys(new Foo);
|
||||
* // => ['a', 'b'] (iteration order is not guaranteed)
|
||||
*
|
||||
* _.keys('hi');
|
||||
* // => ['0', '1']
|
||||
*/
|
||||
var keys = !nativeKeys ? shimKeys : function(object) {
|
||||
if (object) {
|
||||
var Ctor = object.constructor,
|
||||
length = object.length;
|
||||
}
|
||||
if ((typeof Ctor == 'function' && Ctor.prototype === object) ||
|
||||
(typeof object != 'function' && isLength(length))) {
|
||||
return shimKeys(object);
|
||||
}
|
||||
return isObject(object) ? nativeKeys(object) : [];
|
||||
};
|
||||
|
||||
module.exports = keys;
|
Reference in New Issue
Block a user