From fe45b95fd02f04612c6352fb155a17b9909cb948 Mon Sep 17 00:00:00 2001 From: Siarhei Date: Mon, 14 May 2018 16:51:56 +0400 Subject: [PATCH] Simplify findLastIndex --- snippets/findLastIndex.md | 6 +++--- test/findLastIndex/findLastIndex.js | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/snippets/findLastIndex.md b/snippets/findLastIndex.md index 70dccd442..31d8f36d2 100644 --- a/snippets/findLastIndex.md +++ b/snippets/findLastIndex.md @@ -3,14 +3,14 @@ Returns the index of the last element for which the provided function returns a truthy value. Use `Array.map()` to map each element to an array with its index and value. -Use `Array.filter()` to remove elements for which `fn` returns falsey values, `Array.slice(-1)` to get the last one. +Use `Array.filter()` to remove elements for which `fn` returns falsey values, `Array.pop()` to get the last one. ```js const findLastIndex = (arr, fn) => arr .map((val, i) => [i, val]) - .filter(val => fn(val[1], val[0], arr)) - .slice(-1)[0][0]; + .filter(([i, val]) => fn(val, i, arr)) + .pop()[0]; ``` ```js diff --git a/test/findLastIndex/findLastIndex.js b/test/findLastIndex/findLastIndex.js index 41e536d7d..d098c7ed1 100644 --- a/test/findLastIndex/findLastIndex.js +++ b/test/findLastIndex/findLastIndex.js @@ -1,6 +1,6 @@ const findLastIndex = (arr, fn) => arr .map((val, i) => [i, val]) -.filter(val => fn(val[1], val[0], arr)) -.slice(-1)[0][0]; +.filter(([i, val]) => fn(val, i, arr)) +.pop()[0]; module.exports = findLastIndex; \ No newline at end of file