кодесурса
«JavaScript

JavaScript: сопоставить значения массива с объектом с помощью функции

script1adsense2code
script1adsense3code

JavaScript: упражнение-82 с решением

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

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

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

HTML-код:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Map the values of an array to an object using a function</title>
</head>
<body>
</body>
</html>

Код JavaScript:

//#Source https://bit.ly/2neWfJ2 
const mapObject = (arr, fn) =>
  (a => (
    (a = [arr, arr.map(fn)]), a[0].reduce((acc, val, ind) => ((acc[val] = a[1][ind]), acc), {})
  ))();
const squareIt = arr => mapObject(arr, a => a * a);
console.log(squareIt([1, 2, 3])); 

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

 { "1": 1, "2": 4, "3": 9}

Иллюстрированная презентация:

«JavaScript

Блок - схема:

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

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

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


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

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

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

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


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code