語法
js
total(unit)
total(options)
引數
unit-
一個字串,表示
unit選項。這是一個方便的過載,因此total(unit)等同於total({ unit }),其中unit是一個字串。 options-
一個包含以下部分或全部屬性的物件(按檢索和驗證的順序):
relativeTo可選-
一個帶時區或不帶時區的日期(時間),它提供時間與日曆資訊,用於解析 日曆時長(有關此選項的通用解釋,請參閱連結)。如果
this或other是日曆時長,或者unit是日曆單位,則此選項是必需的。 unit-
任何時間單位:
"years"、"months"、"weeks"、"days"、"hours"、"minutes"、"seconds"、"milliseconds"、"microseconds"、"nanoseconds",或它們的單數形式。
返回值
一個浮點數,表示給定單位的總持續時間。由於浮點數精度限制,可能不精確。
異常
RangeError-
在以下情況之一中丟擲
- 未提供
unit,或unit不是有效單位。 this或other是日曆時長,或者unit是日曆單位,並且未提供relativeTo。
- 未提供
描述
如果提供了 relativeTo,則結果的計算方法是將時長新增到起點,找出結果與起點之間的差值(以納秒為單位),然後透過除以每單位的相應納秒數將差值轉換為所請求的單位。提供帶時區的日期時間可以考慮夏令時和其他時區變化;否則,假定為 24 小時一天。
如果未提供 relativeTo,則結果的計算方法是將時長轉換為納秒,然後除以每單位的相應納秒數。
示例
使用 total()
js
const d = Temporal.Duration.from({ hours: 1, minutes: 30 });
console.log(d.total("minutes")); // 90
console.log(d.total("hours")); // 1.5
日曆時長的總和
js
const d = Temporal.Duration.from({ months: 1 });
console.log(
d.total({ unit: "days", relativeTo: Temporal.PlainDate.from("2021-01-01") }),
); // 31
規範
| 規範 |
|---|
| Temporal # sec-temporal.duration.prototype.total |
瀏覽器相容性
載入中…