Google News
logo
Collect.js - Interview Questions
What about first(), firstOrFail() and firstWhere() methods in Collect.js?
first() : The first() method returns the first element in the collection that passes a given truth test:
collect([1, 2, 3, 4]).first(item => item > 1);

// 2
You may also call the first method with no arguments to get the first element in the collection. If the collection is empty, null is returned:
collect([1, 2, 3, 4]).first();

// 1
firstOrFail() : The firstOrFail() method returns the first element in the collection, or throws an error if there are no elements:
collect([1, 2, 3, 4]).firstOrFail(item => item > 1);

// 2
collect([1, 2, 3, 4]).firstOrFail(item => item > 4);

// Error ('Item not found.') is thrown.
You may also call the firstOrFail method with no arguments to get the first element in the collection. If the collection is empty, an error is thrown:
collect([1, 2, 3, 4]).firstOrFail();

// 1
collect().firstOrFail();

// Error ('Item not found.') is thrown.
Like the where method, you may also pass an attribute, operator, and value:
const collection = collect([
  { product: 'Desk', price: 200, discounted: true },
  { product: 'Chair', price: 100, discounted: true },
  { product: 'Bookcase', price: 150, discounted: true },
  { product: 'Door', price: 100 },
]);

collection.firstOrFail('product', '=', 'Desk');

// { product: 'Desk', price: 200, discounted: true }
firstWhere() : The firstWhere() method returns the first element in the collection with the given key / value pair:
const collection = collect([
  { name: 'Regena', age: 12 },
  { name: 'Linda', age: 14 },
  { name: 'Diego', age: 23 },
  { name: 'Linda', age: 84 },
]);

collection.firstWhere('name', 'Linda');

// { name: 'Linda', age: 14 }
Advertisement