Инструкции по решению проблемы: напишите функцию displayOptions, которая получает объект "displayDevice" и возвращает массив.Свойства входного объекта будут опциями «вывода видео», каждый из которых будет иметь значение true или false.Ваша функция должна собирать все имена «видеовыхода», которые имеют истинные значения.
Я нашел способ решить эту проблему с помощью метода .filter (), однако я не до конца понял это и хотелчтобы попытаться сделать это с помощью оператора for..in.Я могу перебирать объект, но он возвращает все ключи в массиве, а не только «истинные».Дайте мне знать, где я ошибся здесь.
Мой код:
function displayOptions(displayDevice) {
for(var key in displayDevice) {
if(displayDevice[key] === true) {
return Object.keys(displayDevice);
}
}
}
var televisionA = {
VGA: false,
HDMI1: true,
HDMI2: true
}
var monitor001 = {
VGA: true,
DVI: false,
HDMI1: true,
HDMI2: true
}
var monitor002 = {
HDMI1: true,
HDMI2: true,
DVI: true
}
displayOptions(televisionA); //["HDMI1", "HDMI2"];
displayOptions(monitor001); //["VGA", "HDMI1", "HDMI2"];