Temporal.PlainTime.prototype.with()
with()
方法用于 Temporal.PlainTime
实例,它会返回一个新的 Temporal.PlainTime
对象,该对象表示当前时间,但其中一些字段已被新值替换。由于所有 Temporal
对象都设计为不可变的,因此此方法实际上充当了时间字段的设置器。
语法
js
with(info)
with(info, options)
参数
info
-
包含至少一个由
Temporal.PlainTime.from()
识别的属性的对象:hour
、microsecond
、millisecond
、minute
、nanosecond
、second
。未指定的属性将使用原始时间的值。 options
可选-
包含以下属性的对象
overflow
可选-
一个指定当时间组件超出范围时的行为的字符串。可能的值包括:
"constrain"
(默认)-
时间组件将被裁剪到有效范围。
"reject"
-
如果时间组件超出范围,将抛出
RangeError
。
返回值
一个新的 Temporal.PlainTime
对象,其中 info
中指定的、非 undefined
的字段将被相应的值替换,其余字段将从原始时间复制。
异常
TypeError
-
在以下情况之一中抛出
info
不是一个包含至少一个已识别属性的对象,也不是一个字符串。options
不是对象或undefined
。
RangeError
-
如果提供的数值属性超出范围,并且
options.overflow
被设置为"reject"
,则会抛出此错误。
示例
使用 with()
js
const time = Temporal.PlainTime.from("12:34:56.123456789");
const newTime = time.with({ hour: 23 });
console.log(newTime.toString()); // '23:34:56.123456789'
有关更多示例,请参阅可以使用 with()
设置的各个属性的文档。
规范
规范 |
---|
Temporal # sec-temporal.plaintime.prototype.with |
浏览器兼容性
加载中…