Temporal.PlainYearMonth.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 thực thể Temporal.PlainYearMonth trả về một đối tượng Temporal.PlainYearMonth mới đại diện cho năm-tháng này dịch chuyển về phía trước một khoảng thời gian nhất định (dưới dạng có thể chuyển đổi bởi Temporal.Duration.from()).
Nếu bạn muốn trừ hai năm-tháng và nhận được một khoảng thời gian, hãy dùng since() hoặc until() thay thế.
Cú pháp
subtract(duration)
subtract(duration, options)
Tham số
duration-
Một chuỗi, một đối tượng, hoặc một thực thể
Temporal.Durationđại diện cho khoảng thời gian cần trừ khỏi năm-tháng này. Nó được chuyển đổi thành đối tượngTemporal.Durationbằng cùng thuật toán nhưTemporal.Duration.from(). optionsOptional-
Một đối tượng chứa thuộc tính sau:
overflowOptional-
Một chuỗi chỉ định hành vi khi một thành phần ngày nằm ngoài phạm vi. Các giá trị có thể là:
"constrain"(mặc định)-
Thành phần ngày được kẹp vào phạm vi hợp lệ.
"reject"-
Một
RangeErrorđược ném ra nếu thành phần ngày nằm ngoài phạm vi.
Giá trị trả về
Một đối tượng Temporal.PlainYearMonth mới đại diện cho năm-tháng được chỉ định bởi PlainYearMonth gốc, trừ đi khoảng thời gian.
Ngoại lệ
RangeError-
Ném ra nếu kết quả không nằm trong phạm vi có thể biểu diễn, tức là ±(108 + 1) ngày, khoảng ±273.972,6 năm, so với Unix epoch.
Mô tả
Trừ một khoảng thời gian tương đương với cộng phủ định của nó, do đó tất cả các cân nhắc tương tự đều áp dụng. Trừ một khoảng thời gian dương bắt đầu từ cuối năm-tháng và dịch chuyển về phía trước, vì vậy bất kỳ đơn vị nào nhỏ hơn độ dài của tháng đều bị bỏ qua.
Ví dụ
>Trừ một khoảng thời gian
const start = Temporal.PlainYearMonth.from("2022-01");
const end = start.subtract({ years: 1, months: 2, weeks: 3, days: 4 });
console.log(end.toString()); // 2020-11
Để xem thêm ví dụ, hãy xem add().
Đặc tả
| Specification |
|---|
| Temporal> # sec-temporal.plainyearmonth.prototype.subtract> |