Результат показывает «Monday1» , потому что метод .getDay отображает 1 как понедельник.

var dob = new Date("April 2,1984");
var weekDay = dob.getDay();
if (weekDay==1) {
document.write('Monday');
}
document.write(weekDay);

Есть ли способ избавиться от номера и оставить только слово понедельник?

0
CeeJay 29 Авг 2017 в 13:32

3 ответа

Лучший ответ

< Сильный > Пример

Вернуть название дня недели (а не просто число):

var d = new Date();
var weekday = new Array(7);
weekday[0] =  "Sunday";
weekday[1] = "Monday";
weekday[2] = "Tuesday";
weekday[3] = "Wednesday";
weekday[4] = "Thursday";
weekday[5] = "Friday";
weekday[6] = "Saturday";

var n = weekday[d.getDay()];

Результат n будет:

Tuesday

Источник: https://www.w3schools.com/jsref/jsref_getday.asp

1
Acidic9 29 Авг 2017 в 10:35

Хм, я думаю, проблема в том, что вам придется написать несколько раз, если еще, и проверяет. Вы можете использовать функцию ниже, чтобы сделать это раз и навсегда

function myFunction() {
  var d = new Date();
  var weekday = new Array(7);
  weekday[0] = "Sunday";
  weekday[1] = "Monday";
  weekday[2] = "Tuesday";
  weekday[3] = "Wednesday";
  weekday[4] = "Thursday";
  weekday[5] = "Friday";
  weekday[6] = "Saturday";

  var n = weekday[d.getDay()];
  alert(n);
}

Надеюсь это поможет.

0
Gurmeet Singh 29 Авг 2017 в 10:38

Вы можете попробовать это с указанием массива будних дней.

var Weekday_name = ['Monday', 'Tuesday', 'Wednesday' ...]
var dob = new Date("April 2,1984");
var weekDay = dob.getDay();
console.log(Weekday_names[weekDay]);
0
Shaamuji 29 Авг 2017 в 10:41