Swift:
Lấy ngày hiện tại

Cách thực hiện:

Việc lấy ngày và giờ hiện tại trong Swift khá đơn giản:

import Foundation

let currentDate = Date()
print(currentDate)

Kết quả mẫu:

2023-04-10 16:20:32 +0000

Nếu bạn muốn một định dạng cụ thể:

import Foundation

let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
let formattedDate = formatter.string(from: Date())
print(formattedDate)

Kết quả mẫu:

2023-04-10 16:20:32

Tìm hiểu kỹ hơn

Struct Date trong Swift là một phần của framework Foundation, được mượn từ NSDate của Objective-C. Theo thời gian, Swift cung cấp một cách tiếp cận hiện đại hơn với Date mà thể hiện mạch lạc và an toàn hơn.

Có những phương pháp khác với Date() để lấy thời gian hiện tại. Ví dụ, NSDate(), khá giống nhưng không thân thiện với Swift như vậy, và các API mức thấp hơn như gettimeofday() để lấy thời gian hệ thống chính xác hơn. Nhưng, Date() là sự lựa chọn hàng đầu đối với hầu hết các nhà phát triển Swift bởi nó cân bằng giữa sự dễ sử dụng với độ chính xác đủ dùng cho hầu hết trường hợp.

Date() trong Swift lấy thời gian hệ thống, thường là theo Thời gian Phối hợp Quốc tế (UTC). Vì vậy, khi bạn in trực tiếp nó không có định dạng, nó xuất hiện với độ lệch UTC. Đó là lý do tại sao các định dạng rất phổ biến; chúng điều chỉnh ngày và giờ sang múi giờ và định dạng cụ thể nào đó, làm cho nó thân thiện với con người khi hiển thị. Việc thực hiện điều chỉnh múi giờ của bạn mà không cần đến định dạng là có thể nhưng tự sáng tạo lại bánh xe và dễ mắc lỗi do những thay đổi của giờ mùa và giây nhuận.

Xem thêm