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 |
浏览器兼容性
加载中…