ui
This commit is contained in:
+101
@@ -0,0 +1,101 @@
|
||||
# `pluck()`
|
||||
|
||||
The pluck method retrieves all of the values for a given key:
|
||||
|
||||
```js
|
||||
const collection = collect([
|
||||
{
|
||||
id: 78,
|
||||
name: 'Aeron',
|
||||
},
|
||||
{
|
||||
id: 79,
|
||||
name: 'Embody',
|
||||
},
|
||||
]);
|
||||
|
||||
const plucked = collection.pluck('name');
|
||||
|
||||
plucked.all();
|
||||
|
||||
// ['Aeron', 'Embody']
|
||||
```
|
||||
|
||||
You may also specify how you wish the resulting collection to be keyed:
|
||||
|
||||
```js
|
||||
const collection = collect([
|
||||
{
|
||||
id: 78,
|
||||
name: 'Aeron',
|
||||
},
|
||||
{
|
||||
id: 79,
|
||||
name: 'Embody',
|
||||
},
|
||||
]);
|
||||
|
||||
const plucked = collection.pluck('name', 'id');
|
||||
|
||||
plucked.all();
|
||||
|
||||
// {
|
||||
// 78: 'Aeron',
|
||||
// 79: 'Embody',
|
||||
// }
|
||||
```
|
||||
|
||||
You can use "dot notation" to access nested values
|
||||
|
||||
```js
|
||||
const collection = collect([
|
||||
{
|
||||
name: 'John',
|
||||
roles: [
|
||||
{
|
||||
name: 'Editor',
|
||||
},
|
||||
{
|
||||
name: 'Admin',
|
||||
},
|
||||
],
|
||||
},
|
||||
]);
|
||||
|
||||
const plucked = collection.pluck('roles.0.name');
|
||||
|
||||
plucked.all();
|
||||
|
||||
// ['Editor']
|
||||
```
|
||||
|
||||
"Dot notation" supports "wildcard"
|
||||
|
||||
```js
|
||||
const collection = collect([
|
||||
{
|
||||
name: 'John',
|
||||
roles: [
|
||||
{
|
||||
name: 'Editor',
|
||||
},
|
||||
{
|
||||
name: 'Admin',
|
||||
},
|
||||
],
|
||||
},
|
||||
]);
|
||||
|
||||
const plucked = collection.pluck('roles.*.name');
|
||||
|
||||
plucked.all();
|
||||
|
||||
// [
|
||||
// [
|
||||
// 'Editor',
|
||||
// 'Admin',
|
||||
// ],
|
||||
// ]
|
||||
```
|
||||
|
||||
[View source on GitHub](https://github.com/ecrmnn/collect.js/blob/master/src/methods/pluck.js)
|
||||
Reference in New Issue
Block a user