JSFiddle - React, Tailwind, and code Playground
by Valeriy
JavaScript
// что такое UTC?
// UTC - это стандарт, по которому Земля делется на 24 временные зоны
// как проверить одновременность событий в разных таймзонах?
// как посчитать продолжительность события, имея два времени в определенной таймзоне?
// как поситать продолжительность события, имея два времени в формате UTC?
// в каком формате дату-время можно передать в конструктор Date?
// а) определить день недели
// б) сгенерировать еще две даты - одну ровно через неделю и еще одну еще через неделю
// в) сгенерировать последние дни месяца каждого года
// г) у объекта Date есть методы, которые меняют и которые не меняют объект; какие из методов какие?
// (a)
var d = new Date();
var n = d.getDay();
// (б)
function generateDateFor(days){
var today = new Date();
var nextweek = new Date(today.getFullYear(), today.getMonth(), today.getDate()+days);
return nextweek;
}
let thisDayNextWeek = generateDateFor(7);
let thisDayNextTwoWeek = generateDateFor(14);
// (в)
function getAllLastDayOfMonth(amountOfMonth) {
let today = new Date();
let array_of_days = [];
for (var i = amountOfMonth; i > 0; i--) {
var lastDayOfMonth = new Date(today.getFullYear(), today.getMonth()+i, 0);
console.log(lastDayOfMonth)
array_of_days.push(lastDayOfMonth);
}
return array_of_days;
}
let qwe = getAllLastDayOfMonth(12)
//(в) более полное решение
function getAllLastDayOfMonthForEveryYear(startDate, stopDate) {
var dateArray = new Array();
while (startDate <= stopDate) {
startDate = new Date(startDate.getFullYear(), startDate.getMonth()+1);
var lastDayOfMonth = new Date(startDate.getFullYear(), startDate.getMonth()+1, 0);
dateArray.push(lastDayOfMonth)
}
return dateArray;
}
let today = new Date();
let startOfUnixTime = new Date('1970-01-01');
var dateArray = getAllLastDayOfMonthForEveryYear(startOfUnixTime, today);
for (i = 0; i < dateArray.length; i ++ ) {
console.log(dateArray[i])
}
// (г)
// методы, которые меняют обьект...