자바스크립트에서 방금 전, 몇 분 전, 몇 시간 전 형식으로 표시하는 법

2023. 8. 14. 06:54· etc
export const getDate = (date: Date): string => {
  const _date = new Date(date)
  const yyyy = _date.getFullYear()
  const mm = String(_date.getMonth() + 1).padStart(2, "0")
  const dd = String(_date.getDate()).padStart(2, "0")
  return `${yyyy}-${mm}-${dd}`
}


export const elapsedTime = (date: Date): string => {
  const start = new Date(date)
  const end = new Date()

  const seconds = Math.floor((end.getTime() - start.getTime()) / 1000)

  if (seconds < 60) return "방금 전"
  else if (seconds < 3600) {
    const minutes = Math.floor(seconds / 60)
    return `${minutes}분 전`
  } else if (seconds < 86400) {
    const hours = Math.floor(seconds / 3600)
    return `${hours}시간 전`
  } else if (seconds < 604800) {
    const days = Math.floor(seconds / 86400)
    return `${days}일 전`
  }
  return getDate(date)
}

 

start와 end 사이의 시간을 밀리초로 계산한 뒤, 초 단위로 변환하며, 소수가 있을 경우 버린다.


조건문을 통해 경과 시간을 문자열로 반환한다.
`60초 미만`이면 '방금 전' 리턴,
`60초 이상 3600초 미만`이면 분 단위로 경과 시간 리턴 (예: 5분 전),
`3600초 이상 86400초 미만`이면 시간 단위로 경과 시간 리턴 (예: 3시간 전),
`86400초 이상 604800초 미만`이면 일 단위로 경과 시간 리턴 (예: 2일 전),

 

만약 모든 조건에 해당하지 않는 경우 getDate(date) 함수를 호출하고 결과를 반환한다.

 

 

참고 자료

https://velog.io/@wlwl99/JavaScript로-방금-전-몇-분-전-몇-시간-전-형식으로-표시하는-법

 

JavaScript로 방금 전, 몇 분 전, 몇 시간 전 형식으로 표시하는 법

솔로 프로젝트에서 게시판에서 게시글이 올라온 시간을 "n분 전" 이런 식으로 나타내고 싶어서 현재 시간을 기준으로 얼마나 지났는지 구해주는 함수를 만들었다.이때 date에 들어가는 값은 숫자

velog.io

 

저작자표시 (새창열림)

'etc' 카테고리의 다른 글

230615  (0) 2023.06.15
자바스크립트 딥다이브 - 프로토타입  (0) 2023.04.21
자바스크립트 딥다이브 - 클로저  (0) 2023.04.13
원티드 프리온보딩 인턴십 9차 후기 (프론트엔드 부트캠프, 취업연계, JavaScript & React)  (0) 2023.04.05
자바스크립트로 todo-list 만들기  (0) 2022.12.07
'etc' 카테고리의 다른 글
  • 230615
  • 자바스크립트 딥다이브 - 프로토타입
  • 자바스크립트 딥다이브 - 클로저
  • 원티드 프리온보딩 인턴십 9차 후기 (프론트엔드 부트캠프, 취업연계, JavaScript & React)
nana-log
nana-log
포스팅이 좋았다면 "❤️공감" 눌러주세요!
nana-log
nana-log
nana-log
전체
오늘
어제
  • 분류 전체보기 (104)
    • TIL (26)
    • project (7)
    • algorithm (18)
    • information processing (30)
    • etc (19)

인기 글

태그

  • dev-tools
  • 회고
  • docker
  • 알고리즘
  • 원티드프리온보딩
  • 자바스크립트
  • JS

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.2
nana-log
자바스크립트에서 방금 전, 몇 분 전, 몇 시간 전 형식으로 표시하는 법
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.