Temporal.PlainDateTime.prototype.until()
Khả dụng hạn chế
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Phương thức until() của các instance Temporal.PlainDateTime trả về một đối tượng Temporal.Duration mới đại diện cho khoảng thời gian từ ngày-giờ này đến một ngày-giờ khác (theo dạng có thể chuyển đổi bởi Temporal.PlainDateTime.from()). Khoảng thời gian là dương nếu ngày-giờ kia ở sau ngày-giờ này, và âm nếu ở trước.
Phương thức này thực hiện other - this. Để thực hiện this - other, hãy dùng phương thức since().
Cú pháp
until(other)
until(other, options)
Tham số
other-
Một chuỗi, một đối tượng, hoặc một instance
Temporal.PlainDateTimeđại diện cho ngày-giờ cần trừ từ ngày-giờ này. Nó được chuyển đổi thành đối tượngTemporal.PlainDateTimesử dụng cùng thuật toán nhưTemporal.PlainDateTime.from(). Nó phải có cùng lịch nhưthis. optionsOptional-
Các tùy chọn giống như
since().
Giá trị trả về
Một đối tượng Temporal.Duration mới đại diện cho khoảng thời gian từ ngày-giờ này đến other. Khoảng thời gian là dương nếu other ở sau ngày-giờ này, và âm nếu ở trước.
Ngoại lệ
RangeError-
Được ném ra trong một trong các trường hợp sau:
othercó lịch khác vớithis.- Bất kỳ tùy chọn nào không hợp lệ.
Ví dụ
>Sử dụng until()
let nextBilling = Temporal.PlainDateTime.from({
year: Temporal.Now.plainDateISO().year,
month: 4,
day: 1,
});
const now = Temporal.Now.plainDateTimeISO().round("second");
if (Temporal.PlainDateTime.compare(nextBilling, now) < 0) {
nextBilling = nextBilling.add({ years: 1 });
}
const duration = now.until(nextBilling);
console.log(`${duration.toLocaleString("en-US")} until next billing`);
Để xem thêm ví dụ, xem since().
Đặc tả
| Thông số kỹ thuật |
|---|
| Temporal> # sec-temporal.plaindatetime.prototype.until> |