кодесурса
«JavaScript

JavaScript: Сравните два объекта, чтобы определить, содержит ли первый эквивалентные значения свойств для второго, на основе предоставленной функции

script1adsense2code
script1adsense3code

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

Напишите программу на JavaScript для сравнения двух объектов, чтобы определить, содержит ли первый объект значения эквивалентных свойств для второго на основе предоставленной функции.

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

HTML-код:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Compare two objects to determine if the first one contains equivalent property values to the second one, based on a provided function</title>
</head>
<body>
</body>
</html>

Код JavaScript:

//#Source https://bit.ly/2neWfJ2 
const matchesWith = (obj, source, fn) =>
  Object.keys(source).every(
    key =>
      obj.hasOwnProperty(key) && fn
        ? fn(obj[key], source[key], key, obj, source)
        : obj[key] == source[key]
  );
const isGreeting = val => /^h(?:i|ello)$/.test(val);
console.log(matchesWith(
  { greeting: 'hello' },
  { greeting: 'hi' },
  (oV, sV) => isGreeting(oV) && isGreeting(sV)
));

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

 правда

Блок - схема:

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

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

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


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

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

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

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


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code