可选bsonreturn BSON regular expressions as BSONRegExp instances.
可选checkthe serializer will check if keys are valid.
可选enableEnable utf8 validation when deserializing BSON documents. Defaults to true.
可选fieldsallow to specify if there what fields we wish to return as unserialized raw buffer.
可选ignoreserialize will not emit undefined fields (default:true)
可选promotewhen deserializing a Binary will return it as a node.js Buffer instance.
可选promotewhen deserializing a Long will fit it into a Number if it's smaller than 53 bits.
可选promotewhen deserializing will promote BSON values to their Node.js closest equivalent types.
可选rawEnabling the raw option will return a Node.js Buffer which is allocated using allocUnsafe API. See this section from the Node.js Docs here for more detail about what "unsafe" refers to in this context. If you need to maintain your own editable clone of the bytes returned for an extended life time of the process, it is recommended you allocate your own buffer and clone the contents:
const raw = await collection.findOne({}, { raw: true });
const myBuffer = Buffer.alloc(raw.byteLength);
myBuffer.set(raw, 0);
// Only save and use `myBuffer` beyond this point
Please note there is a known limitation where this option cannot be used at the MongoClient level (see NODE-3946).
It does correctly work at Db, Collection, and per operation the same as other BSON options work.
可选serializeserialize the javascript functions (default:false).
可选usewhen deserializing a Long will return as a BigInt.
BSON Serialization options.