Skip to content

Instantly share code, notes, and snippets.

@sererejegede
sererejegede / getDayDate.ts
Created December 12, 2021 07:12
Get any date for the day of the week for passed date.
type WeekDays = 0 | 1 | 2 | 3 | 4 | 5 | 6
export function getDayDate(date: Date | string, weekDay: WeekDays) {
const _date = new Date(date)
const day = _date.getDay()
if (day === weekDay) return _date
const diff =
(day === 0 || day - weekDay === 0
? weekDay - 7
: weekDay === 0
? weekDay + 7
/**
* @param {Array} arr - Array to be filtered from
* @param {Array} props - array of keys that needs to be unique
* @returns {Array} - unique array
*/
const unique = (arr, props = []) => [...new Map(arr.map(entry => [props.map(k => entry[k]).join('|'), entry])).values()]