Как получить следующий день недели?

88
07 июля 2021, 21:00

С помощью этого кода можно получить следующий день с месяцем? С помощью этого кода я получаю день недели, но к числу не добавляется 1

var d = new Date();
var n = parseInt(d.getDay());
document.write(n+1);
Answer 1

Метод getDay() возвращает порядковый номер дня недели указанной даты по местному времени, где 0 соответствует воскресенью, а 6 субботе. То есть, если день недели суббота, то при n+1Вы получите некорректное значение. Помимо этого, метод getDay() и так возвращает целочисленное значение и его не нужно дополнительно приводить к числу.

Возвращает объект Date для следующего дня:

var getTomorrow = function(){ 
  var now = new Date(); 
  return new Date( 
      now.getFullYear(), 
      now.getMonth(), 
      now.getDate() + 1, 
      now.getHours(), 
      now.getMinutes(), 
      now.getSeconds()); 
}; 
 
var tomorrow = getTomorrow(); 
var options = { 
    weekday: 'long', 
    year: 'numeric', 
    month: 'long', 
    day: 'numeric' 
}; 
console.log(tomorrow.toLocaleDateString('ru-RU', options));

Если параметризировать функцию, то можно и так:

var getFutureDate = function(days){ 
  var now = new Date(); 
  return new Date( 
      now.getFullYear(), 
      now.getMonth(), 
      now.getDate() + days, 
      now.getHours(), 
      now.getMinutes(), 
      now.getSeconds()); 
}; 
 
var dateInMonth = getFutureDate(30); 
var options = { 
    weekday: 'long', 
    year: 'numeric', 
    month: 'long', 
    day: 'numeric' 
}; 
console.log(dateInMonth.toLocaleDateString('ru-RU', options));

На странице документации имеется исчерпывающие примеры использования.

Answer 2

Функция получает следующий день недели

function nextDay(x){
    var now = new Date();    
    now.setDate(now.getDate() + (x+(7-now.getDay())) % 7);
    return now;
}
READ ALSO
Как запускать/останавливать видео по нажатию на кнопку?

Как запускать/останавливать видео по нажатию на кнопку?

Указал ниже скрипт, который запускается при нажатии на кнопкуПосле этого видео останавливается, но при повторном нажатии не хочет запускаться

95
Как последовательно вызвать асинхронную функцию с коллбеками?

Как последовательно вызвать асинхронную функцию с коллбеками?

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

73
В background script замораживаются таймеры

В background script замораживаются таймеры

Пишу расширение для Chrome и таймеры, в том числе не высокочастотные (более 1 мин) со временем просто перестают срабатывать в background скрипте расширения

87
ASP.NET Core. Не устанавливается Webpack 4

ASP.NET Core. Не устанавливается Webpack 4

Всем приветПишу SPA-приложение на ASP

83