ObjectId

在本页面

Description

  • ObjectId(* *)

  • 一个 4 字节的* timestamp value *,表示 ObjectId 的创建,以自 Unix 纪元以来的秒数为单位

  • 5 字节随机值

  • 一个 3 字节的递增计数器,初始化为一个随机值

虽然 BSON 格式本身是低位字节序,但* timestamp counter *值是高位字节序,最高有效字节出现在字节序列中。

ObjectId()可以接受以下参数:

FieldTypeDescription
hexadecimalString可选的。新 ObjectId 的十六进制字符串值。

方法和属性

ObjectId()具有以下属性和方法:

Attribute/MethodDescription
str返回对象的十六进制字符串表示形式。
ObjectId.getTimestamp()返回对象的时间戳部分作为日期。
ObjectId.toString()以字符串 Literals“ ObjectId(...)”的形式返回 JavaScript 表示形式。
ObjectId.valueOf()以十六进制字符串形式返回对象的表示形式。返回的字符串是str属性。

Examples

生成新的 ObjectId

要生成新的 ObjectId,请使用不带参数的ObjectId()

x = ObjectId()

在此示例中,x的值为:

ObjectId("507f1f77bcf86cd799439011")

指定十六进制字符串

要使用具有唯一十六进制字符串的ObjectId()生成新的 ObjectId,请执行以下操作:

y = ObjectId("507f191e810c19729de860ea")

在此示例中,y的值为:

ObjectId("507f191e810c19729de860ea")

访问十六进制字符串

访问ObjectId()对象的str属性,如下所示:

ObjectId("507f191e810c19729de860ea").str

此操作将返回以下十六进制字符串:

507f191e810c19729de860ea