Подтвердить что ты не робот

Как получить день недели с номера дня в Javascript?

Данный dayNumber соответствует 0..6, представляющему Monday..Sunday соответственно.

Можно ли использовать объекты Date/String, чтобы получить день недели от dayNumber?

4b9b3361

Ответ 1

Это даст вам день, основанный на индексе, который вы передаете:

var weekday=new Array(7);
weekday[0]="Monday";
weekday[1]="Tuesday";
weekday[2]="Wednesday";
weekday[3]="Thursday";
weekday[4]="Friday";
weekday[5]="Saturday";
weekday[6]="Sunday";
console.log("Today is " + weekday[3]);

Выходы "Сегодня четверг"

Вы можете получить индекс текущих дней из JavaScript с помощью getDay() (однако в этом методе воскресенье равно 0, в понедельнике 1 и т.д.):

var d=new Date();
console.log(d.getDay());

Вывод 1, когда он понедельник.

Ответ 2

Более элегантный способ, который позволяет также показывать будний день по языку, если вы выберете вариант, начиная с последней версии сценариев ECMA и работает во всех последних браузерах и node.js:

console.log(new Date().toLocaleString('en-us', {  weekday: 'long' }));

Ответ 3

Этот код является модифицированной версией того, что указано выше. Он возвращает строку, представляющую день вместо

/**
* Converts a day number to a string.
*
* @method dayOfWeekAsString
* @param {Number} dayIndex
* @return {Number} Returns day as number
*/
function dayOfWeekAsString(dayIndex) {
  return ["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"][dayIndex];
}

Например

dayOfWeekAsString(0) returns "Monday"

Ответ 4

Это добавит функцию getDayOfWeek() в качестве прототипа в класс JavaScript Date.

Date.prototype.getDayOfWeek = function(){   
    return ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"][ this.getDay() ];
};

Ответ 5

/**
* I convert a day string to an number.
*
* @method dayOfWeekAsInteger
* @param {String} day
* @return {Number} Returns day as number
*/
function dayOfWeekAsInteger(day) {
  return ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"].indexOf(day);
}