w3resource

JavaScript: Get the last key that satisfies the provided testing function, otherwise undefined is returned

JavaScript fundamental (ES6 Syntax): Exercise-235 with Solution

Write a JavaScript program to get the last key that satisfies the provided testing function, otherwise undefined is returned.

  • Use Object.keys(obj) to get all the properties of the object.
  • Use Array.prototype.reverse() to reverse the order and Array.prototype.find() to test the provided function for each key-value pair.
  • The callback receives three arguments - the value, the key and the object.

Sample Solution:

JavaScript Code:

// Define a function 'findLastKey' to find the last key in an object that satisfies a provided testing function
const findLastKey = (obj, fn) =>
  Object.keys(obj) // Get the keys of the object
    .reverse() // Reverse the array of keys to search from end to start
    .find(key => fn(obj[key], key, obj)); // Find the last key that satisfies the condition

// Test the 'findLastKey' function with a sample object and testing function
console.log(findLastKey(
  {
    barney: { age: 36, active: true },
    fred: { age: 40, active: false },
    pebbles: { age: 1, active: true }
  },
  o => o['active'] // Check if the 'active' property of the object is true
)); // Output: 'pebbles'

Output:

pebbles

Flowchart:

flowchart: Get the last key that satisfies the provided testing function, otherwise undefined is returned.

Live Demo:

See the Pen javascript-basic-exercise-235-1 by w3resource (@w3resource) on CodePen.


Improve this sample solution and post your code through Disqus

Previous: Write a JavaScript program to flatten a given array up to the specified depth.
Next: Write a JavaScript program to get the first key that satisfies the provided testing function. Otherwise return undefined.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.