Estoy tratando de obtener los resultados completos de la ejecución de este código. En este momento, lo que obtengo es solo la fecha de todos los valores, pero lo necesito para que se muestren todas las columnas, así que el nombre y la fecha. ¿Alguien puede ayudar?
const result = [ { id: 1, name: 'Tom', date: '2022-05-17T22:00:00.000Z' }, { id: 2, name: 'Joe', date: '2022-05-12T22:00:00.000Z' }, { id: 3, name: 'Frederiko', date: '2022-05-23T22:00:00.000Z' }, { id: 4, name: 'John', date: null }, { id: 5, name: 'Boer', date: '2022-05-23T22:00:00.000Z' } ] let time = dayjs().format('YYYY-MM-DD') let eyy = result.filter(item1 => !result.find(item2 => item1.name == item2.name && dayjs(item2.date).format('YYYY-MM-DD') == time)) console.log(eyy); <script src="https://unpkg.com/dayjs@1.8.21/dayjs.min.js"></script>El método result.filter se puede simplificar eliminando el uso de result.find , por ejemplo...
const result = [ { id: 1, name: 'Tom', date: '2022-05-17T22:00:00.000Z' }, { id: 2, name: 'Joe', date: '2022-05-12T22:00:00.000Z' }, { id: 3, name: 'Frederiko', date: '2022-05-23T22:00:00.000Z' }, { id: 4, name: 'John', date: null }, { id: 5, name: 'Boer', date: '2022-05-23T22:00:00.000Z' } ] let time = dayjs().format('YYYY-MM-DD') let eyy = result.filter(item => dayjs(item.date).format('YYYY-MM-DD') === time) console.log(eyy); <script src="https://unpkg.com/dayjs@1.8.21/dayjs.min.js"></script>Probablemente valga la pena señalar que, dependiendo de dónde se encuentre en el mundo, es probable que lo anterior no devuelva nada porque no hay fechas que coincidan con la fecha de hoy (24 de mayo).
De sus comentarios parece que desea modificar la estructura de los resultados filtrados. Para hacer esto puedes usar el método .map() ...
const result = [ { id: 1, name: 'Tom', date: '2022-05-17T22:00:00.000Z' }, { id: 2, name: 'Joe', date: '2022-05-12T22:00:00.000Z' }, { id: 3, name: 'Frederiko', date: '2022-05-23T22:00:00.000Z' }, { id: 4, name: 'John', date: null }, { id: 5, name: 'Boer', date: '2022-05-24T22:00:00.000Z' } ]; let time = dayjs().format('YYYY-MM-DD'); let eyy = result.map(item => { return { name: item.name, date: dayjs(item.date).format('YYYY-MM-DD') }; }); eyy = eyy.filter(item => item.date === time); console.log(eyy); <script src="https://unpkg.com/dayjs@1.8.21/dayjs.min.js"></script>