달나라 노트

Google Apps Script : 날짜/시간의 특정 요소 얻기 (getFullYear, getMonth, getDate, getHours, getMinutes, getSeconds) 본문

Google Apps Script

Google Apps Script : 날짜/시간의 특정 요소 얻기 (getFullYear, getMonth, getDate, getHours, getMinutes, getSeconds)

CosmosProject 2022. 11. 21. 03:04
728x90
반응형

 

 

 

GAS에서는 날짜/시간 객체에 담긴 요소들을 얻어올 수 있는 함수입니다.

 

예를들어 2022-11-20 20:13:56 라는 날짜 객체가 있으면

여기서 년도인 2022년을 얻어온다거나,

시간인 20을 얻어온다거나 하는 식이죠.

 

 

Syntax

DateTime.getFullYear()
DateTime.getMonth()
DateTime.getDate()
DateTime.getHours()
DateTime.getMinutes()
DateTime.getSeconds()

 

사용법은 간단합니다.

날짜 객체에 위 method들을 적용시켜주면 됩니다.

 

Method Decription Example
getFullYear() 년도 값을 return 2022
getMonth() 월 값을 return 0, 1, 2, ..., 10, 11
getDate() 일 값을 return 1, 2, 3, ..., 30, 31
getHours() 시간 값을 return 1, 2, 3, ..., 11, 12
getMinutes() 분 값을 return 0, 1, 2, ..., 58, 59
getSeconds() 초 값을 return 0, 1, 2, ..., 58, 59

 

아마 대부분의 method들은 파악하기 쉬울겁니다.

근데 한 가지 주의할 점이 있습니다.

 

getMonth()를 보면 Example에 0, 1, 2, ..., 10, 11 이라고 적혀있습니다.

월은 분명히 1월, 2월, ... 11월, 12월일텐데 왜 0부터 시작할까요?

 

GAS는 Javascript를 기반으로 한 언어입니다.

근데 Javascript에서는 1월과 0이 대응됩니다.

즉, 0은 1월을 의미하며, 1은 2월을 의미하고 11은 12월을 의미합니다.

따라서 Javascript를 기반으로 한 GAS에서도 월에 대한 번호는 0부터 시작한다는 것을 알 수 있죠.

 

물론 실제 date 객체에서 날짜를 표시할 때에는 우리가 아는 1월 ~ 12월로 표시가 됩니다.

다만 월요일을 1이라는 weekday number로 대응하여 나타내듯이 1월을 0이라는 숫자로 대응한다고 보시면 됩니다.

 

 

 

 

 

 

 

아래 예시를 봅시다.

 

function myFunction() {
  var now = new Date();
  Logger.log(now);

  Logger.log(now.getFullYear());
  Logger.log(now.getMonth());
  Logger.log(now.getDate());
  Logger.log(now.getHours());
  Logger.log(now.getMinutes());
  Logger.log(now.getSeconds());
}

 

위 코드는 현재 시간 데이터에서 각각 년도, 월, 일, 시간, 분, 초를 얻어오는 코드입니다.

 

 

 

그 결과는 위와 같습니다.

 

현재 시점은 2022-11-21 03:26:44 입니다.

따라서 그에 대한 년도, 월, 일, 시간, 분, 초 정보가 출력된 것을 볼 수 있습니다.

 

한 가지 주의할 것은 11월이 10이라는 숫자와 대응되기 때문에 getMonth()의 결과로 10이 출력된 것입니다.

비록 10으로 월이 출력되었지만 이는 11월을 의미한다는 것에 주의합시다.

 

 

 

 

 

 

728x90
반응형
Comments