Temporal.Instant.prototype.subtract()

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Phương thức subtract() của các instance Temporal.Instant trả về một đối tượng Temporal.Instant mới biểu diễn instant này được dịch chuyển về quá khứ một khoảng thời gian đã cho (ở dạng có thể chuyển đổi bằng Temporal.Duration.from()).

Nếu bạn muốn trừ hai instant và nhận một duration, hãy sử dụng since() hoặc until() thay thế.

Cú pháp

js
subtract(duration)

Tham số

duration

Một chuỗi, một đối tượng, hoặc instance Temporal.Duration biểu diễn một duration để trừ khỏi instant này. Nó được chuyển đổi thành đối tượng Temporal.Duration bằng cùng thuật toán như Temporal.Duration.from().

Giá trị trả về

Một đối tượng Temporal.Instant mới biểu diễn việc trừ duration từ instant này. Nếu duration là dương, thì instant được trả về nằm trước instant này; nếu duration là âm, thì instant được trả về nằm sau instant này.

Ngoại lệ

RangeError

Được ném ra trong một trong các trường hợp sau:

  • durationcalendar duration (có giá trị years, months, hoặc weeks khác không), hoặc có days khác không, vì calendar duration không rõ ràng khi không có lịch và tham chiếu thời gian.
  • Kết quả không nằm trong phạm vi có thể biểu diễn, là ±108 ngày, hay khoảng ±273.972,6 năm, tính từ Unix epoch.

Mô tả

Trừ một duration tương đương với cộng phần bù âm của nó, do đó tất cả các cân nhắc tương tự đều áp dụng.

Ví dụ

Trừ một Temporal.Duration

js
const instant = Temporal.Instant.fromEpochMilliseconds(1000);
const duration = Temporal.Duration.from("PT1S"); // Duration một giây
const newInstant = instant.subtract(duration);
console.log(newInstant.epochMilliseconds); // 0

Để xem thêm ví dụ, xem add().

Đặc tả

Specification
Temporal
# sec-temporal.instant.prototype.subtract

Tương thích trình duyệt

Xem thêm