12345678910111213141516171819202122232425262728 |
- import _reduce from "./internal/_reduce.js";
- import curry from "./curry.js";
- /**
- * Returns the number of items in a given `list` matching the predicate `f`
- *
- * @func
- * @memberOf R
- * @since v0.28.0
- * @category List
- * @sig (a -> Boolean) -> [a] -> Number
- * @param {Function} predicate to match items against
- * @return {Array} list of items to count in
- * @example
- *
- * const even = x => x % 2 == 0;
- *
- * R.count(even, [1, 2, 3, 4, 5]); // => 2
- * R.map(R.count(even), [[1, 1, 1], [2, 3, 4, 5], [6]]); // => [0, 2, 1]
- */
- var count =
- /*#__PURE__*/
- curry(function (pred, list) {
- return _reduce(function (a, e) {
- return pred(e) ? a + 1 : a;
- }, 0, list);
- });
- export default count;
|