diff --git a/source/Ox/js/Collection.js b/source/Ox/js/Collection.js index ffad45c9..e8943035 100644 --- a/source/Ox/js/Collection.js +++ b/source/Ox/js/Collection.js @@ -68,13 +68,17 @@ Ox.count Counts the occurences of values in a collection {f: 1, o: 2} > Ox.count('foo') {f: 1, o: 2} + > Ox.count('foo', 'f') + 1 + > Ox.count('foo', 'x') + 0 @*/ -Ox.count = function(collection) { - var ret = {}; +Ox.count = function(collection, value) { + var count = {}; Ox.forEach(collection, function(value) { - ret[value] = (ret[value] || 0) + 1; + count[value] = (count[value] || 0) + 1; }); - return ret; + return value ? count[value] || 0 : count; }; /*@