Listar un día de la semana del mes
Elija una fecha y un día de la semana para listar cada día que coincide en ese mes: los lunes de marzo de 2024 caen el 4, el 11, el 18 y el 25. Febrero de 2024 tiene incluso cinco jueves, el último el 29. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- Fecha
- 2024-03-15
- Día de la semana
- monday
- Año
- 2 024
- Mes
- 3
- Índice del día de la semana
- 1
- Fechas
- 2024-03-04, 2024-03-11, 2024-03-18, 2024-03-25
Las reuniones recurrentes, los calendarios de nóminas, los partidos deportivos y las hojas de asistencia suelen necesitar el conjunto completo de lunes o viernes que caen dentro de un mes concreto, no solo la tercera aparición o la última. Convertir esa petición en fechas gregorianas concretas exige conocer el día de la semana del primero del mes, cuántas semanas enteras caben antes de que el mes termine y si febrero llega a veintinueve días en un año bisiesto. Esta herramienta acepta cualquier fecha civil ISO válida y un nombre de día de la semana o un índice en base cero, y devuelve cada fecha ISO coincidente de ese mes en orden ascendente. El día de la entrada solo debe ser un día de calendario real; el año y el mes definen la ventana.
Cómo se listan todas las fechas de un día de la semana en un mes sin reloj
Parta de dos piezas de intención: una fecha civil ISO gregoriana con el formato cuatro dígitos, guion, dos dígitos, guion, dos dígitos, y un día de la semana objetivo expresado como nombre en inglés como monday o como entero de cero a seis con el domingo igual a cero. El año y el mes de esa fecha definen el mes de calendario a examinar; el día se valida igualmente, de modo que cadenas imposibles como el treinta y uno de abril se rechazan antes de generar el listado.
Confirme las reglas de bisiestos de febrero con la prueba gregoriana estándar: un año es bisiesto cuando es divisible por cuatro, salvo que los años de siglo solo lo son cuando también son divisibles por cuatrocientos. Eso decide si febrero tiene veintiocho o veintinueve días y, por tanto, cuántos de cada día de la semana pueden aparecer. A partir de ese día de la semana del primero del mes, el número de día de la primera coincidencia es uno más la distancia modular hasta el objetivo.
Cada aparición posterior llega exactamente siete días civiles después, y el recorrido se detiene cuando el siguiente candidato saldría de la longitud del mes. Formatee cada día como cadena ISO de formato cuatro-dos-dos y devuelva la lista ordenada junto con los enteros del día del mes y el recuento de apariciones.
Dónde aporta valor listar todas las fechas de un día de la semana del mes
Los calendarios de equipo suelen necesitar todos los miércoles de un mes de entrega para standups o trenes de lanzamiento, no solo el segundo miércoles de la reunión general. Los sistemas de nóminas y prestaciones materializan cada viernes de pago del mes al generar recibos y cortes bancarios. Las ligas deportivas y escolares publican fechas semanales de partidos o clases como el conjunto completo de sábados o lunes de un mes de temporada.
Los ingenieros de datos construyen tablas de dimensiones de apariciones de días de la semana para analítica sin arrastrar una librería iCalendar completa a una ruta de funciones puras. Quienes escriben materiales didácticos sobre aritmética modular y reglas gregorianas de bisiestos quieren un oráculo de confianza que devuelva cuatro o cinco fechas ISO y nunca invente un día en el mes siguiente.
Si más adelante necesita solo el tercer lunes, solo el último viernes, el día de la semana de una sola fecha o cuántos lunes hay en un año completo, trátelos como intenciones de búsqueda y landings separados en lugar de sobrecargar esta página de listar todos los días de la semana del mes.
Qué puede hacer con ella
Reuniones de equipo recurrentes de un mes completo
Convierta «todos los lunes de marzo» en una lista ISO concreta para invitaciones de calendario, congelamientos de CI e informes de estado sin contar semanas a mano.
Nóminas y recibos de viernes de pago
Materialice cada viernes (u otro día de pago) dentro de un mes de nómina para recibos, cortes bancarios y tablas de dimensiones financieras.
Calendarios de ligas y asistencia en clase
Publique fechas semanales de partidos o clases como el conjunto completo de sábados o miércoles que caen dentro de un mes de temporada o de curso.
Preguntas frecuentes
¿Qué significa listar todos los días de la semana de un mes?
Significa cada fecha de calendario de un día de la semana nombrado dentro del mes de su fecha ISO: por ejemplo, todos los lunes de marzo de 2024 son 2024-03-04, 2024-03-11, 2024-03-18 y 2024-03-25.
¿Importa el día de la fecha de entrada?
Solo para la validación: el día debe existir en ese mes. El año y el mes definen qué mes se examina; las fechas listadas no se limitan a las posteriores a su día de muestra.
¿Cuántas fechas recibiré?
Suele ser cuatro, a veces cinco. Los meses siempre contienen cuatro o cinco de cada día de la semana; los febreros bisiestos pueden tener cinco de algunos días.
¿Gestiona los años bisiestos?
Sí. Se aplican las reglas gregorianas de bisiestos, así que febrero puede tener veintinueve días y contener cinco de algunos días de la semana.
¿Cuánto cuesta?
La herramienta del navegador es gratuita y se ejecuta en local.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/date/list-weekday-dates-month \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"2024-03-15","weekday":"monday"}'const res = await fetch("https://api.kit.forhosting.com/date/list-weekday-dates-month", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"date": "2024-03-15",
"weekday": "monday"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/list-weekday-dates-month",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"date": "2024-03-15",
"weekday": "monday"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/list-weekday-dates-month", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"date":"2024-03-15","weekday":"monday"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"date":"2024-03-15","weekday":"monday"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/list-weekday-dates-month", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"date": "2024-03-15",
"weekday": "monday"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.list_weekday_dates_month",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Qué envía y qué recibe
Envíe dos campos obligatorios: date como cadena civil ISO válida YYYY-MM-DD, y weekday como nombre en inglés como friday o como entero de cero a seis con el domingo igual a cero. Comprobaciones clásicas: todos los lunes de marzo de dos mil veinticuatro caen el cuatro, el once, el dieciocho y el veinticinco; todos los viernes de febrero de dos mil veinticuatro caen el dos, el nueve, el dieciséis y el veintitrés; y todos los jueves de febrero de dos mil veinticuatro incluyen el veintinueve porque ese febrero bisiesto tiene cinco jueves. Los campos ausentes, las cadenas de fecha mal formadas, los días que no existen en ese mes y los tokens de día desconocidos fallan con invalid_input y no se cobran. En caso de éxito, la respuesta devuelve la fecha normalizada, el año y el mes; el nombre normalizado del día y weekday_index; dates como el array ascendente de cadenas ISO; days como los enteros del día del mes coincidentes; count con cuántas veces aparece ese día; days_in_month; is_leap_year para el año; y una breve cadena formula que documenta las reglas de bisiestos y de Sakamoto. El precio de las llamadas API exitosas es el base publicado de $0.002 por elemento; los fallos de validación no consumen saldo prepagado.
Dónde aporta valor listar todas las fechas de un día de la semana del mes
Al ser esta capacidad un motor parse puro, el precio de la API es el base publicado de $0.002 por elemento exitoso y la validación fallida no consume saldo.