diff options
Diffstat (limited to 'deps/npm/node_modules/cli-table2/node_modules/lodash/collection/size.js')
-rw-r--r-- | deps/npm/node_modules/cli-table2/node_modules/lodash/collection/size.js | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/deps/npm/node_modules/cli-table2/node_modules/lodash/collection/size.js b/deps/npm/node_modules/cli-table2/node_modules/lodash/collection/size.js new file mode 100644 index 0000000000..78dcf4ce9b --- /dev/null +++ b/deps/npm/node_modules/cli-table2/node_modules/lodash/collection/size.js @@ -0,0 +1,30 @@ +var getLength = require('../internal/getLength'), + isLength = require('../internal/isLength'), + keys = require('../object/keys'); + +/** + * Gets the size of `collection` by returning its length for array-like + * values or the number of own enumerable properties for objects. + * + * @static + * @memberOf _ + * @category Collection + * @param {Array|Object|string} collection The collection to inspect. + * @returns {number} Returns the size of `collection`. + * @example + * + * _.size([1, 2, 3]); + * // => 3 + * + * _.size({ 'a': 1, 'b': 2 }); + * // => 2 + * + * _.size('pebbles'); + * // => 7 + */ +function size(collection) { + var length = collection ? getLength(collection) : 0; + return isLength(length) ? length : keys(collection).length; +} + +module.exports = size; |