У меня есть Object
obj
, как показано ниже:
const obj = {
Hostname: "abc.com"
Check1Status: "PASS"
Check2Status: "PASS"
Check3Status: "FAIL"
Check3ErrorHeading: "Reason for Check3"
Check3ErrorDetail: "Details for Check3"
Check4Status: "FAIL"
Check4ErrorHeading: "Reason for Check4"
Check4ErrorDetail: "Details for Check4"
TotalExecutions: 5
};
- Я хочу захватить
TotalExecutions
- Я хочу исключить все пары значений ключа, которые иметь
PASS
в качестве значения. - Я хочу исключить ключ
Hostname
и его значение. - Я хочу захватить только
checks
, которые имеют Status
как FAIL
таким образом, чтобы результат выглядел следующим образом: TotalExecutions:5,Check3:Reason for Check3:Details for Check3, Check4:Reason for Check4:Details for Check4
Окончательный результат должен быть string
. Я написал следующий код, который исключает PASS
и включает TotalExecutions
и исключает HostName
, но не реализует 4
const result = Object.values(obj).map
(el => Object.entries(el).filter(([key, value]) => value !== 'PASS' && key !== 'Hostname').reduce((acc, [key, value]) => ({
...acc,
[key]: value
}), {}));