Array Cardio #2

some()

Tests whether at least one element in the array passes the test implemented by the provided function.

const people = [
  { name: 'Wes', year: 1988 },
  { name: 'Kait', year: 1986 },
  { name: 'Irv', year: 1970 },
  { name: 'Lux', year: 2015 }
];

// Array.prototype.some() // is at least one person 19 or older?
let anyOlderThan19 = people.some(person => {
  let age = new Date().getFullYear() - person.year;
  return age > 18;
});

console.log(anyOlderThan19);
>> true

every()

Tests whether all elements in the array pass the test implemented by the provided function.

// Array.prototype.every() // is everyone 19 or older?
let allOlderThan19 = people.every(person => {
  let age = new Date().getFullYear() - person.year;
  return age > 18;
});

console.log(allOlderThan19);
>> false

find()

Returns the value of the first element in the array that satisfies the provided testing function. Otherwise undefined is returned.

const comments = [
  { text: 'Love this!', id: 523423 },
  { text: 'Super good', id: 823423 },
  { text: 'You are the best', id: 2039842 },
  { text: 'Ramen is my fav food ever', id: 123523 },
  { text: 'Nice Nice Nice!', id: 542328 }
];

// find the comment with the ID of 823423
let comment = comments.find(comment => comment.id === 823423);
console.log(comment);
>> { id: 823423, text: "Super good" }

findIndex()

Returns the index of the first element in the array that satisfies the provided testing function. Otherwise -1 is returned.

// Find the comment with this ID
// delete the comment with the ID of 823423

let commentIndex = comments.findIndex(comment => comment.id === 823423);
comments.splice(commentIndex, 1);

console.log(comments);
[
  { text: "Love this!", id: 523423 },
  { text: "You are the best", id: 2039842 },
  { text: "Ramen is my fav food ever", id: 123523 },
  { text: "Nice Nice Nice!", id: 542328}
]