Flutter extension on

이건선·2023년 7월 22일
0

Flutter

목록 보기
17/30

on

on은 Dart 언어에서 사용되는 키워드로, 'extension'이 다루는 대상 타입을 지정하는데 사용됩니다. 'extension'은 기존 클래스에 새로운 기능을 추가할 수 있게 해주는 Dart의 기능입니다.

extension DateTimeExtension on DateTime {
 String get formattedDate => DateFormat('dd/MM/yyyy').format(this);

 String get formattedTime => DateFormat('HH:mm').format(this);

 String get formattedDateTime => DateFormat('dd/MM/yyyy HH:mm').format(this);
}

위의 코드는 DateTime 클래스에 새로운 메소드들을 추가하는 역할을 합니다.

DateTime 클래스에 원래 formattedDate, formattedTime, formattedDateTime라는 메소드들이 없지만, 이 extension을 사용하면 DateTime 객체에 이러한 메소드들을 사용할 수 있게 됩니다.

DateTime now = DateTime.now();
print(now.formattedDate);

이렇게 하면 현재 날짜를 'dd/MM/yyyy' 형식의 문자열로 출력합니다.

따라서, on 키워드는 이러한 extension이 어떤 클래스에 적용되는지를 나타내주는 역할을 합니다.

만약 매개변수가 필요한 메서드를 만들어야한다면, get 키워드를 사용하지 않고 일반 메소드처럼 정의하면 됩니다.

profile
멋지게 기록하자

1개의 댓글

comment-user-thumbnail
2023년 7월 22일

좋은 글이네요. 공유해주셔서 감사합니다.

답글 달기