кодесурса
«JavaScript

JavaScript: получить все уникальные значения (образуют правую часть массива) массива на основе предоставленной функции сравнения

script1adsense2code
script1adsense3code

Основной JavaScript (синтаксис ES6): упражнение-107 с решением

Напишите программу на JavaScript, чтобы получить все уникальные значения (образующие правую часть массива) массива на основе предоставленной функции компаратора.

Пример решения:

HTML-код:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Get all unique values (form the right side of the array) of an array, based on a provided comparator function</title>
</head>
<body>
</body>
</html>

Код JavaScript:

//#Source https://bit.ly/2neWfJ2 
const uniqueElementsByRight = (arr, fn) =>
  arr.reduceRight((acc, v) => {
    if (!acc.some(x => fn(v, x))) acc.push(v);
    return acc;
  }, []);
console.log(uniqueElementsByRight(
  [
    { id: 0, value: 'a' },
    { id: 1, value: 'b' },
    { id: 2, value: 'c' },
    { id: 1, value: 'd' },
    { id: 0, value: 'e' }
  ],
  (a, b) => a.id == b.id
));

Пример вывода:

 [{ "ID": 0, "значение": "е"}, { "идентификатор": 1, "значение": "г"}, { "идентификатор": 2, "значение": "с"}]

Блок - схема:

«Блок-схема:

Демонстрация в реальном времени:

См. Pen javascript-basic-упражнение-107-1 от w3resource ( @ w3resource ) на CodePen .


Улучшите этот пример решения и опубликуйте свой код через Disqus

Предыдущий: Напишите программу на JavaScript для создания массива элементов, разгруппирования элементов в массиве, созданного zip, и применения предоставленной функции.
Далее: Напишите программу на JavaScript, чтобы получить все уникальные значения массива на основе предоставленной функции компаратора.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code