Given the following datastructure:
const data = [{ foo: 'bar' }, { bar: 'baz' }, { foo: 'bar'}, { foo: 'baz'}, { foo: 'moo'}, { moo: 'bar'}, { foo: 'moo'}, { baz: 'moo' }, { foo: 'meh'}]
Write a function getFoo
that extracts all unique values for foo
, except undefined
. The overall code should be in one line using less than 60 characters.
Signature: object[] => string[]
No further conventions / restrictions. Think out of the box and not in clean code! Esoteric solutions welcomed!
Top comments (2)
const getFoo = d => d?.reduce((x, dd) => (dd?.hasOwnProperty('foo') && !x?.includes(dd?.foo)) ? [...x, dd.foo] : x, [])
Couldn't do it in less than 60 characters 😭😭