[JS]시간 계산 표시 (방금전, 몇분전, 몇시간전, 몇일전)

김재범·2022년 12월 2일
0

중고마켓 리팩토링을 하면서 시간표시에 대한 것을 어떻게 표현할 지 찾아보던 중 좋은 예시가 있어서 가져옴

  export const timeForToday = (value) => {
    const today = new Date();
    const timeValue = new Date(value);

    const betweenTime = Math.floor(
      (today.getTime() - timeValue.getTime()) / 1000 / 60
    );
    if (betweenTime < 1) return "방금전";
    if (betweenTime < 60) {
      return `${betweenTime}분전`;
    }

    const betweenTimeHour = Math.floor(betweenTime / 60);
    if (betweenTimeHour < 24) {
      return `${betweenTimeHour}시간전`;
    }

    const betweenTimeDay = Math.floor(betweenTime / 60 / 24);
    if (betweenTimeDay < 365) {
      return `${betweenTimeDay}일전`;
    }

    return `${Math.floor(betweenTimeDay / 365)}년전`;
  };

출처: https://kdinner.tistory.com/68

이런식으로 구현되었다.

profile
지식을 쌓고 있습니다.

0개의 댓글