javascript

JavaScript: obtener día de la semana según fecha

En este artículo sobre programación en JavaScript te mostraré cómo obtener el día de la semana según una fecha. Es decir, saber cuál día de la semana fue, y adicionalmente obtener su nombre.

Por ejemplo, hoy es lunes, así que el número del día de la semana es 1 (pues en JavaScript el domingo es 0) y el día es, aunque sea repetitivo, lunes.

Veamos algunas funciones para obtener esos resultados.

getDay para día de la semana

A partir de una fecha podemos crear un objeto de tipo Date y después simplemente invocar al método getDay. Esta función va a devolver un 0 para domingo, 1 para lunes y así hasta que sea 6 para sábado.

Veamos un ejemplo:

const fechaComoCadena = "2020-03-09 23:37:22"; // día lunes
const numeroDia = new Date(fechaComoCadena).getDay();
console.log("Número de día de la semana: ", numeroDia); 

Al ejecutar el código el resultado es 1. Con eso podemos saber que es lunes. Puedes probar el ejemplo aquí.

Nombre del día de la semana en JavaScript

Trabajando con arreglos y usando getDay como índice podemos devolver el nombre del día a partir de una fecha. Así:

const fechaComoCadena = "2020-03-09 23:37:22"; // día lunes
const dias = [
  'domingo',
  'lunes',
  'martes',
  'miércoles',
  'jueves',
  'viernes',
  'sábado',
];
const numeroDia = new Date(fechaComoCadena).getDay();
const nombreDia = dias[numeroDia];
console.log("Nombre de día de la semana: ", nombreDia);

Al ejecutar el código se imprime “lunes”. Puedes probarlo aquí.

Encerrando en una función

Podemos encerrar el comportamiento de todo esto en una función que reciba la fecha y devuelva el nombre del día. Vamos a reducir un poco el código y a ahorrarnos algunas líneas, es decir, lo vamos a simplificar para que quede así:

const nombreDelDiaSegunFecha = fecha => {
  return [
    'domingo',
    'lunes',
    'martes',
    'miércoles',
    'jueves',
    'viernes',
    'sábado',
  ][new Date(fecha).getDay()];
}

Incluso podría quedar más corta:

const nombreDelDiaSegunFecha = fecha => [
    'domingo',
    'lunes',
    'martes',
    'miércoles',
    'jueves',
    'viernes',
    'sábado',
    'domingo',
  ][new Date(fecha).getDay()];

Más ejemplos

Por ahora mostramos con una fecha específica. Pero veamos otras fechas:

const nombreDelDiaSegunFecha = fecha => [
    'domingo',
    'lunes',
    'martes',
    'miércoles',
    'jueves',
    'viernes',
    'sábado',
  ][new Date(fecha).getDay()];


const fechasParaProbar = [
  "2013-01-18 17:00:00",
  "2013-08-03 10:00:00",
  "1997-06-21 22:00:00",
];

fechasParaProbar.forEach(fecha => {
  console.log(`En ${fecha} fue ${nombreDelDiaSegunFecha(fecha)}`);
});

La salida es correcta:

Nombre del día de la semana según fecha en JavaScript

Puedes probar el código en este enlace.

De este modo podemos indicar cuál día fue o saber el número de día. Puedes personalizar el algoritmo a tu gusto, yo solo te mostré un ejemplo.

Te invito a ver más sobre JavaScript en mi blog.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.
parzibyte

Programador freelancer listo para trabajar contigo. Aplicaciones web, móviles y de escritorio. PHP, Java, Go, Python, JavaScript, Kotlin y más :) https://parzibyte.me/blog/software-creado-por-parzibyte/

Ver comentarios

  • en el array de dias el ultimo domingo no esta demas? ese seria el indice 7 del array, pero getDay solo retorma un nuemro entre 0 y 6 cierto?

Entradas recientes

Servidor HTTP en Android con Flutter

El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…

3 días hace

Imprimir automáticamente todos los PDF de una carpeta

En este post te voy a enseñar a designar una carpeta para imprimir todos los…

4 días hace

Guía para imprimir en plugin versión 1 desde Android

En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…

1 semana hace

Añadir tasa de cambio en sistema de información

Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…

2 semanas hace

Comprobar validez de licencia de plugin ESC POS

Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…

2 semanas hace

Imprimir euro € en impresora térmica

Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…

3 semanas hace

Esta web usa cookies.