>웹 프론트엔드 >JS 튜토리얼 >JavaScript에서 자연 언어로 경과 시간을 형식화하는 방법은 무엇입니까?

JavaScript에서 자연 언어로 경과 시간을 형식화하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-09 11:34:02777검색

How to Format Time Elapsed in Natural Language in JavaScript?

경과 시간을 자연어로 표현하기

타임스탬프를 표시할 때 경과 시간을 자연어로 표현하는 것이 더 사용자 친화적일 수 있으며, 예를 들어 '2023-03-08 14:05:03' 대신 '4분 전'을 사용하세요. 이 문서에서는 간결하고 읽기 쉬운 방식으로 JavaScript Date 개체의 형식을 지정하는 방법을 보여줍니다.

제공된 함수 timeSince는 현재 날짜와 지정된 날짜 간의 차이를 계산합니다. 그런 다음 경과된 시간을 경과된 초 수를 기준으로 년, 월, 일, 시간, 분 또는 초로 분류합니다.

function timeSince(date) {
  var seconds = Math.floor((new Date() - date) / 1000);

  var interval = seconds / 31536000;

  if (interval > 1) {
    return Math.floor(interval) + " years";
  }
  interval = seconds / 2592000;
  if (interval > 1) {
    return Math.floor(interval) + " months";
  }
  interval = seconds / 86400;
  if (interval > 1) {
    return Math.floor(interval) + " days";
  }
  interval = seconds / 3600;
  if (interval > 1) {
    return Math.floor(interval) + " hours";
  }
  interval = seconds / 60;
  if (interval > 1) {
    return Math.floor(interval) + " minutes";
  }
  return Math.floor(seconds) + " seconds";
}

예:

var aDay = 24 * 60 * 60 * 1000;
console.log(timeSince(new Date(Date.now() - aDay))); // "1 day ago"
console.log(timeSince(new Date(Date.now() - aDay * 2))); // "2 days ago"

위 내용은 JavaScript에서 자연 언어로 경과 시간을 형식화하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.