Temporal.PlainDateTime.prototype.round()
Temporal.PlainDateTime 实例的 round() 方法返回一个新的 Temporal.PlainDateTime 对象,该对象表示此日期时间舍入到给定单位的结果。
语法
round(smallestUnit)
round(options)
参数
smallestUnit(最小单位)-
表示
smallestUnit选项的字符串。这是一个便捷的重载,因此round(smallestUnit)等价于round({ smallestUnit }),其中smallestUnit是一个字符串。 options-
一个包含以下部分或全部属性的对象(按检索和验证的顺序):
roundingIncrement可选-
一个数字(截断为整数),表示在给定
smallestUnit下的舍入增量。默认为1。对于除"day"之外的所有smallestUnit值,增量必须是该单位最大值的约数;例如,如果单位是小时,则增量必须是 24 的约数且不能是 24 本身,这意味着它可以是 1、2、3、4、6、8 或 12。对于"day",增量必须是 1。 roundingMode可选-
一个字符串,指定如何对
smallestUnit的小数部分进行四舍五入。参见Intl.NumberFormat()。默认为"halfExpand"。 smallestUnit(最小单位)-
一个字符串,表示输出中包含的最小单位。该值必须是以下之一:
"day"、"hour"、"minute"、"second"、"millisecond"、"microsecond"、"nanosecond"或它们的复数形式。对于大于"nanosecond"的单位,smallestUnit的小数部分将根据roundingIncrement和roundingMode设置进行舍入。
返回值
一个新的 Temporal.PlainDateTime 对象,表示此日期时间舍入到给定单位的结果,其中所有小于 smallestUnit 的单位都被清零。
异常
RangeError-
如果任何选项无效,则抛出。
示例
小单位的四舍五入
const dt = Temporal.PlainDateTime.from("2021-07-01T12:34:56.123456789");
const nearestMillisecond = dt.round("millisecond");
console.log(nearestMillisecond.toString()); // 2021-07-01T12:34:56.123
const nearestHalfHour = dt.round({
smallestUnit: "minute",
roundingIncrement: 30,
});
console.log(nearestHalfHour.toString()); // 2021-07-01T12:30:00
const nextDay = dt.round({ smallestUnit: "day", roundingMode: "ceil" });
console.log(nextDay.toString()); // 2021-07-02T00:00:00
规范
| 规范 |
|---|
| Temporal # sec-temporal.plaindatetime.prototype.round |
浏览器兼容性
加载中…