JavaScript: получить максимальное значение массива после сопоставления каждого элемента значению, используя предоставленную функцию
Основной JavaScript (синтаксис ES6): упражнение 86 с решением
Напишите программу на JavaScript, чтобы получить максимальное значение массива после сопоставления каждого элемента значению, используя предоставленную функцию.
Пример решения:
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Get the maximum value of an array, after mapping each element to a value using the provided function</title>
</head>
<body>
</body>
</html>
Код JavaScript:
//#Source https://bit.ly/2neWfJ2
const maxBy = (arr, fn) => Math.max(...arr.map(typeof fn ==='function' ? fn : val => val[fn]));
console.log(maxBy([{ n: 4 }, { n: 2 }, { n: 8 }, { n: 6 }], o => o.n));
console.log(maxBy([{ n: 4 }, { n: 2 }, { n: 8 }, { n: 6 }], 'n'));
Пример вывода:
8 8
Иллюстрированная презентация:
Блок - схема:
Демонстрация в реальном времени:
См. Pen javascript-basic-упражнение-86-1 от w3resource ( @ w3resource ) в CodePen .
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите программу на JavaScript, которая заменит все символы, кроме последнего, указанным символом маски.
Далее: Напишите программу на JavaScript, чтобы получить максимум n элементов из предоставленного массива. Если n больше или равно длине предоставленного массива, вернуть исходный массив (отсортированный в порядке убывания).
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования