Version 1
[yaffs-website] / node_modules / grunt-legacy-log / node_modules / lodash / collection / size.js
diff --git a/node_modules/grunt-legacy-log/node_modules/lodash/collection/size.js b/node_modules/grunt-legacy-log/node_modules/lodash/collection/size.js
new file mode 100644 (file)
index 0000000..78dcf4c
--- /dev/null
@@ -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;