@igoryusha22

Как добраться до дальнего свойства в объекте?

Есть подобный массив объектов:
[
	{ val: { id: 10 } }, 
	{ val: { id: 78 } }, 
	{ val: { id: 254 } }, 
	{ val: { id: 0 } }, 
	{ val: { id: 401 } }, 
	{ val: { id: 4 } }, 
	{ val: { id: 100 } }, 
	{ val: { id: -10 } }, 
	{ val: { id: 10 } }, 
],


Необходимо отсортировать его содержимое, опираясь на id.
Проблем не возникает если прописывать путь до id ручками.
const qSort = (list) => {
	if (list.length < 2) return list;

		const middleIndex = Math.floor(list.length / 2);
		const pivot = list.splice(middleIndex, 1)[0];
		const pivotValue = pivot.val.id;
		const smaller = list.filter(item => item.val.id <= pivotValue);
		const bigger = list.filter(item => item.val.id > pivotValue);
		return [
			...qSort(smaller),
			pivot,
			...qSort(bigger),
		];

};


Но как быть, если писать универсальную функцию с указанием пути в параметрах?
  • Вопрос задан
  • 77 просмотров
Решения вопроса 1
Aetae
@Aetae Куратор тега JavaScript
Тлен
lodash get или самому написать функцию - аналог. Универсальной "магии" не существует.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы