Показать сообщение отдельно
  #1 (permalink)  
Старый 14.11.2018, 14:49
Новичок на форуме
Отправить личное сообщение для notOldFagFromRussia Посмотреть профиль Найти все сообщения от notOldFagFromRussia
 
Регистрация: 08.11.2018
Сообщений: 3

Как вывести имя объекта с максимальным значением из массива
Доброе.

Возникла такая проблема:

Из массива heroArr нужно вывести имя (name) объекта с максимальным value.

var heroArr = [
	{'name': 'ironman', 'value': 0 },
	{'name': 'cap', 'value': 0 },
	{'name': 'hawkeye', 'value': 3 },
	{'name': 'widow', 'value': 0 },
	{'name': 'thor', 'value': 0 },
	{'name': 'hulk', 'value': 0 },
];


В примере выше должно вывести hawkeye.


Находим максимальное значение среди всех ответов:

var maxAnswer = Math.max(heroArr.map(answer => answer.value), 0);


И создаем массив с объектами, у которых value максимальное:

var result = heroArr.filter(answer => answer.value == maxAnswer);


По итогу

function getResult() {
	for (answer of result) {
		alert('Поздравляю, сынок. Теперь ты: ' + answer.name);
     }
};


должен быть alert выводящий hawkeye.

Но по факту не выводит вообще ничего.
И ошибок в консоли нет.

Подскажите в чем проблема может быть.
Или свой вариант в студию)
Ответить с цитированием