Dada una fecha como April 22, 2022 ¿cómo podemos determinar con precisión qué viernes de ese mes es? En este caso es el viernes 4.
He probado todas las combinaciones de sumar el día de la semana (0-6, entonces 5) más el día actual, dividir las cosas por 7, usar % porque parece genial, etc. En este punto estoy perplejo.
Estoy usando la biblioteca Luxon, pero también tengo acceso a JS y dayjs nativos
Probar esto:
function getFriday(day, month, year){ date = new Date(year, month - 1, day) if (date.getDay() === 5){ return Math.ceil(day / 7) } else{ return "Date is not a Friday" } } console.log(getFriday(21, 1, 2022)) // 3 console.log(getFriday(4, 2, 2022)) // 1 console.log(getFriday(22, 4, 2022)) // 4 console.log(getFriday(15, 5, 2022)) // Date is not a FridayCrea un objeto de fecha a partir de los argumentos de la función, verifica si la fecha es un viernes y luego calcula qué viernes es. Si la fecha no es un viernes, devuelve "La fecha no es un viernes", aunque esto podría eliminarse para devolver un valor nulo.