Timestamp class

Timestamp 表示与任何时区或日历无关的时间点,以世界协调时间 (UTC) 计时原点的时间单位为秒和秒数的小数部分(以纳秒为单位)表示。

它使用前公历进行编码,该历法将公历向前延伸到第一年。其编码假设每分钟的时长均为 60 秒,即闰秒经过均匀分布处理,因此不需要使用闰秒表进行解释。范围是从 0001-01-01T00:00:00Z 到 9999-12-31T23:59:59.999999999Z。

如需查看示例和其他规范,请参阅时间戳定义

签名

export declare class Timestamp 

构造函数

构造函数 修饰符 说明
(构造函数)(秒, 纳秒) 创建新的时间戳。

属性

属性 修饰符 类型 说明
纳秒 数字 秒的小数部分(以纳秒为单位)。*
数字 从 Unix 纪元 1970-01-01T00:00:00Z 开始计算的世界协调时间 (UTC) 的秒数。

方法

方法 修饰符 说明
fromDate(日期) static 根据给定日期创建新的时间戳。
fromMillis(毫秒) static 根据给定的毫秒数创建新的时间戳。
isEqual(other) 如果此 Timestamp 等于提供的值,则返回 true。
now() static 创建包含当前日期的新时间戳,精确到毫秒。
toDate() Timestamp 转换为 JavaScript Date 对象。此转换会导致精度损失,因为 Date 对象仅支持毫秒级精度。
toJSON() 返回此 Timestamp 的可序列化 JSON 表示法。
toMillis() Timestamp 转换为数字时间戳(以毫秒为单位,从 Epoch 起算)。此操作会导致精度损失。
toString() 返回此 Timestamp 的文本表示形式。
valueOf() 将此对象转换为基元字符串,以允许使用 ><=>=> 运算符比较 Timestamp 对象。

Timestamp.(构造函数)

创建新的时间戳。

签名

constructor(
    seconds: number, 
    nanoseconds: number);

参数

参数 类型 说明
数字 从 Unix 纪元 1970-01-01T00:00:00Z 开始计算的世界协调时间 (UTC) 的秒数。必须介于 0001-01-01T00:00:00Z 到 9999-12-31T23:59:59Z(含)之间。
纳秒 数字 秒的非负分数(以纳秒为单位)。带分数的负秒值仍必须包含按时间计算的非负纳秒值。必须介于 0 到 999,999,999 之间(含边界值)。

Timestamp.nanoseconds

秒的小数部分(以纳秒为单位)。*

签名

readonly nanoseconds: number;

Timestamp.seconds

从 Unix 纪元 1970-01-01T00:00:00Z 开始计算的世界协调时间 (UTC) 的秒数。

签名

readonly seconds: number;

Timestamp.fromDate()

根据给定日期创建新的时间戳。

签名

static fromDate(date: Date): Timestamp;

参数

参数 类型 说明
日期 日期 用于初始化 Timestamp 的日期。

返回

时间戳

一个新的 Timestamp,表示与指定日期相同的时间点。

Timestamp.fromMillis()

根据给定的毫秒数创建新的时间戳。

签名

static fromMillis(milliseconds: number): Timestamp;

参数

参数 类型 说明
毫秒 数字 从 Unix 纪元 1970-01-01T00:00:00Z 开始计算的毫秒数。

返回

时间戳

一个新的 Timestamp,表示与给定的毫秒数相同的时间点。

Timestamp.isEqual()

如果此 Timestamp 等于提供的值,则返回 true。

签名

isEqual(other: Timestamp): boolean;

参数

参数 类型 说明
其他 时间戳 要比较的 Timestamp

返回

布尔值

如果此 Timestamp 等于提供的值,则为 true。

Timestamp.now()

创建包含当前日期的新时间戳,精确到毫秒。

签名

static now(): Timestamp;

返回

时间戳

表示当前日期的新时间戳。

Timestamp.toDate()

Timestamp 转换为 JavaScript Date 对象。此转换会导致精度损失,因为 Date 对象仅支持毫秒级精度。

签名

toDate(): Date;

返回

日期

表示与此 Timestamp 相同的时间点的 JavaScript Date 对象,精度为毫秒级。

Timestamp.toJSON()

返回此 Timestamp 的可序列化 JSON 表示法。

签名

toJSON(): {
        seconds: number;
        nanoseconds: number;
    };

返回

{ seconds: number;nanoseconds:数字;}

Timestamp.toMillis()

Timestamp 转换为数字时间戳(以毫秒为单位,从 Epoch 起算)。此操作会导致精度损失。

签名

toMillis(): number;

返回

数字

与此时间戳对应的时间点,表示为自 Unix 纪元 1970-01-01T00:00:00Z 起经过的毫秒数。

Timestamp.toString()

返回此 Timestamp 的文本表示形式。

签名

toString(): string;

返回

字符串

Timestamp.valueOf()

将此对象转换为基元字符串,以允许使用 ><=>=> 运算符比较 Timestamp 对象。

签名

valueOf(): string;

返回

字符串