JavaScript Week of the Year ✨♻️한 줄 - JavaScript의 날짜 연산
24165 단어 reacttypescriptjavascriptangular
체킹
이전
날짜가 다른 날짜보다 이전인지 확인합니다.
// 2020/10/20 is before 2020/10/21
new Date('2020/10/20') < new Date('2020/10/21');
// => true
동일하다
날짜가 다른 날짜와 동일한지 확인합니다.
// '2020-10-20' is same of '2020-10-21'
new Date(2020, 9, 20).valueOf() === new Date(2020, 9, 21).valueOf();
// => false
new Date(2020, 9, 20).valueOf() === new Date(2020, 9, 20).valueOf();
// => true
new Date(2020, 9, 20).getTime() === new Date(2020, 9, 20).getTime();
// => true
new Date(2020, 9, 20).valueOf() === new Date(2020, 9, 20).getTime();
// => true
new Date(2020, 9, 20).toDateString().substring(4, 7) ===
new Date(2020, 9, 21).toDateString().substring(4, 7);
// => true
이후
날짜가 다른 날짜 이후인지 확인
new Date(2020, 9, 20) > new Date(2020, 9, 19);
// => true
윤년인가
연도가 윤년인지 확인
new Date(2000, 1, 29).getDate() === 29;
// => true
날짜
변수가 기본 js Date 객체인지 확인하십시오.
new Date() instanceof Date;
// => true
가져오기 또는 설정
주어진 날짜의 밀리초/초/분/시간 가져오기
new Date().getSeconds();
// => 49
new Date().getHours();
// => 19
주어진 날짜의 밀리초/초/분/시를 설정합니다.
new Date(new Date().setSeconds(30));
// => "2020-09-09T09:12:30.695Z"
new Date(new Date().setHours(13));
// => "2020-09-09T03:12:49.695Z"
날짜
월의 날짜를 가져옵니다.
new Date().getDate();
// => 9
날짜를 설정합니다.
new Date().setDate(4);
// => "2020-09-04T09:12:49.695Z"
요일
요일을 가져옵니다.
new Date().getDay();
// => 0 (Sunday)
요일 설정
new Date().setDate(new Date().getDate() - 14);
// => "2020-08-26T09:12:49.695Z"
올해의 날
연도의 날짜를 가져오거나 설정합니다.
Math.floor(
(new Date() - new Date(new Date().getFullYear(), 0, 0)) / 1000 / 60 / 60 / 24
);
// => 252
올해의 주
올해의 주를 가져옵니다.
const day = new Date();
const MILLISECONDS_IN_WEEK = 604800000;
const firstDayOfWeek = 1; // monday as the first day (0 = sunday)
const startOfYear = new Date(day.getFullYear(), 0, 1);
startOfYear.setDate(
startOfYear.getDate() + (firstDayOfWeek - (startOfYear.getDay() % 7))
);
const dayWeek = Math.round((day - startOfYear) / MILLISECONDS_IN_WEEK) + 1;
// => 37
올해의 주를 설정합니다.
const day = new Date();
const week = 24;
const MILLISECONDS_IN_WEEK = 604800000;
const firstDayOfWeek = 1; // monday as the first day (0 = sunday)
const startOfYear = new Date(day.getFullYear(), 0, 1);
startOfYear.setDate(
startOfYear.getDate() + (firstDayOfWeek - (startOfYear.getDay() % 7))
);
const dayWeek = Math.round((day - startOfYear) / MILLISECONDS_IN_WEEK) + 1;
day.setDate(day.getDate() - (dayWeek - week) * 7);
day.toISOString();
// => "2020-06-10T09:12:49.794Z
월의 일
이번 달의 일 수를 가져옵니다.
new Date(2012, 02, 0).getDate();
// => 29
구문 분석
주어진 형식 문자열을 사용하여 날짜 문자열에서 구문 분석된 날짜를 반환합니다.
const datePattern = /^(\d{2})-(\d{2})-(\d{4})$/;
const [, month, day, year] = datePattern.exec('12-25-1995');
new Date(`${month}, ${day} ${year}`);
// => "1995-12-24T13:00:00.000Z"
주어진 형식 문자열을 사용하여 시간 문자열에서 구문 분석된 날짜를 반환합니다.
const datePattern = /^(\d{4})-(\d{2})-(\d{2})\s(\d{1,2}):(\d{2})$/;
const [, year, month, day, rawHour, min] = datePattern.exec('2010-10-20 4:30');
new Date(`${year}-${month}-${day}T${('0' + rawHour).slice(-2)}:${min}:00`);
// => "2010-10-19T17:30:00.000Z"
조종하다
추가하다
지정된 날짜에 지정된 날짜 수를 추가합니다.
// add 7 days
const now = new Date();
now.setDate(now.getDate() + 7);
// => "Sun Sep 16 2018 09:12:49"
덜다
지정된 날짜에서 지정된 일 수를 뺍니다.
// subsctact 7 days
new Date(new Date().getTime() - 1000 * 60 * 60 * 24 * 7);
// => Sun Sep 09 2018 09:12:49
시간의 끝
주어진 날짜에 대한 시간 단위의 끝을 반환합니다.
const end = new Date();
end.setHours(23, 59, 59, 999);
end.toISOString();
// => "2018-09-09T16:59:59.999Z"
표시하다
지금부터 시간
지금부터 시간을 반환합니다.
new Intl.RelativeTimeFormat().format(-4, 'day');
// => "4 days ago"
차이점
주어진 날짜 사이의 시간 단위 가져오기
// difference betwwen '2007-01-27' to '2007-01-29'
new Date(2007, 0, 27) - new Date(2007, 0, 29);
// => -172800000
Math.ceil(
(new Date(2007, 0, 27) - new Date(2007, 0, 29)) / 1000 / 60 / 60 / 24
);
// => -2
Reference
이 문제에 관하여(JavaScript Week of the Year ✨♻️한 줄 - JavaScript의 날짜 연산), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/edisonpappi/one-line-date-operations-in-javascript-5c1h텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)