JavaScript: Получить номер недели по году ISO-8601, начиная с понедельника
JavaScript Datetime: упражнение 24 с решением
Напишите функцию JavaScript для получения номера недели в году по ISO-8601, начиная с понедельника.
Пример : 42 (42-я неделя в году)
Тестовые данные :
dt = новая дата (2015, 10, 1);
console.log (ISO8601_week_no (дт));
44
Пример решения: -
HTML-код:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>JavaScript function to get ISO-8601 week number of year, weeks starting on Monday</title>
</head>
<body>
</body>
</html>
Код JavaScript:
function ISO8601_week_no(dt)
{
var tdt = new Date(dt.valueOf());
var dayn = (dt.getDay() + 6) % 7;
tdt.setDate(tdt.getDate() - dayn + 3);
var firstThursday = tdt.valueOf();
tdt.setMonth(0, 1);
if (tdt.getDay() !== 4)
{
tdt.setMonth(0, 1 + ((4 - tdt.getDay()) + 7) % 7);
}
return 1 + Math.ceil((firstThursday - tdt) / 604800000);
}
dt = new Date();
console.log(ISO8601_week_no(dt));
dt = new Date(2015, 10, 1);
console.log(ISO8601_week_no(dt));
Пример вывода:
25 44
Блок - схема:
Демонстрация в реальном времени:
См. Pen JavaScript - Получить номер недели в году по ISO-8601, недели, начиная с понедельника-date-ex-24, от w3resource ( @ w3resource ) на CodePen .
Улучшите этот пример решения и опубликуйте свой код через Disqus
Предыдущий: Напишите функцию JavaScript, чтобы получить английский порядковый суффикс для дня месяца, 2 символа (st, nd, rd или th.).
Далее: напишите функцию JavaScript, чтобы получить полное текстовое представление месяца, например, января или июня.
Каков уровень сложности этого упражнения?
Новый контент: Composer: менеджер зависимостей для PHP , R программирования