# # `pluck()`

The pluck method retrieves all of the values for a given key:

    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:

    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

    const collection = collect([
      {
        name: "John",
        roles: [
          {
            name: "Editor"
          },
          {
            name: "Admin"
          }
        ]
      }
    ]);

    const plucked = collection.pluck("roles.0.name");

    plucked.all();

    //=> ['Editor']

"Dot notation" supports "wildcard"

    const collection = collect([
      {
        name: "John",
        roles: [
          {
            name: "Editor"
          },
          {
            name: "Admin"
          }
        ]
      }
    ]);

    const plucked = collection.pluck("roles.*.name");

    plucked.all();

    //=> [
    //=>   [
    //=>     'Editor',
    //=>     'Admin',
    //=>   ],
    //=> ]

View source on GitHub