ui
This commit is contained in:
+38
@@ -0,0 +1,38 @@
|
||||
# `countBy()`
|
||||
|
||||
The countBy method counts the occurences of values in the collection. By default, the method counts the occurrences of every element:
|
||||
|
||||
```js
|
||||
const collection = collect([1, 2, 2, 2, 3]);
|
||||
|
||||
const counted = collection.countBy();
|
||||
|
||||
counted.all();
|
||||
|
||||
// {
|
||||
// 1: 1,
|
||||
// 2: 3,
|
||||
// 3: 1,
|
||||
// }
|
||||
```
|
||||
|
||||
However, you pass a callback to the countBy method to count all items by a custom value:
|
||||
|
||||
```js
|
||||
const collection = collect([
|
||||
'mohamed.salah@gmail.com',
|
||||
'sadio.mane@yahoo.com',
|
||||
'roberto.firmino@gmail.com',
|
||||
]);
|
||||
|
||||
const counted = collection.countBy(email => email.split('@')[1]);
|
||||
|
||||
counted.all();
|
||||
|
||||
// {
|
||||
// 'gmail.com': 2,
|
||||
// 'yahoo.com': 1,
|
||||
// }
|
||||
```
|
||||
|
||||
[View source on GitHub](https://github.com/ecrmnn/collect.js/blob/master/src/methods/countBy.js)
|
||||
Reference in New Issue
Block a user