JavaScript: получить набор свойств, указанных указанными селекторами из объекта
Основы JavaScript (синтаксис ES6): упражнение 49 с решением
Напишите программу на JavaScript для извлечения набора свойств, указанных указанными селекторами из объекта.
Пример решения:
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Retrieve a set of properties indicated by the given selectors from an object</title>
</head>
<body>
</body>
</html>
Код JavaScript:
//#Source https://bit.ly/2neWfJ2
const get = (from, ...selectors) =>
[...selectors].map(s =>
s
.replace(/\[([^\[\]]*)\]/g, '.$1.')
.split('.')
.filter(t => t !== '')
.reduce((prev, cur) => prev && prev[cur], from)
);
const obj = { selector: { to: { val: 'val to select' } }, target: [1, 2, { a: 'test' }] };
console.log(get(obj, 'selector.to.val', 'target[0]', 'target[2].a'));
Пример вывода:
["val to select", 1, "test"]
Блок - схема:
Демонстрация в реальном времени:
См. Pen javascript-basic-упражнение-1-49 от w3resource ( @ w3resource ) на CodePen .
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите программу на JavaScript, чтобы получить массив имен свойств функций из собственных (и необязательно наследуемых) перечисляемых свойств объекта.
Далее: Напишите программу на JavaScript для преобразования целого числа в строку с суффиксом, добавив am или pm в зависимости от ее значения.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования