映射
MongooseMap.prototype.$isMongooseMapMongooseMap.prototype.clear()MongooseMap.prototype.delete()MongooseMap.prototype.get()MongooseMap.prototype.set()MongooseMap.prototype.toBSON()MongooseMap.prototype.toJSON()
MongooseMap.prototype.$isMongooseMap
类型
- «属性»
对于所有 Mongoose 映射实例,设置为 true
MongooseMap.prototype.clear()
覆盖原生 Map 的 clear() 函数以支持更改跟踪。
MongooseMap.prototype.delete()
覆盖原生 Map 的 delete() 函数以支持更改跟踪。
MongooseMap.prototype.get()
覆盖原生 Map 的 get() 函数以支持 Mongoose 获取器。
MongooseMap.prototype.set()
覆盖原生 Map 的 set() 函数以支持设置器、populate() 和更改跟踪。请注意,Mongoose 映射仅支持字符串和 ObjectId 作为键。
键也不能
- 以特殊属性
prototype、constructor和__proto__命名 - 以美元符号 (
$) 开头 - 包含任何点 (
.)
示例
doc.myMap.set('test', 42); // works
doc.myMap.set({ obj: 42 }, 42); // Throws "Mongoose maps only support string keys"
doc.myMap.set(10, 42); // Throws "Mongoose maps only support string keys"
doc.myMap.set("$test", 42); // Throws "Mongoose maps do not support keys that start with "$", got "$test"" MongooseMap.prototype.toBSON()
将此映射转换为原生 JavaScript 映射,以便 MongoDB 驱动程序可以将其序列化。
MongooseMap.prototype.toJSON()
参数
[options]«Object»[options.flattenMaps=false]«Boolean» 设置为true以将映射转换为 POJO 而不是原生 JavaScript 映射
将此映射转换为原生 JavaScript 映射以用于 JSON.stringify()。设置 flattenMaps 选项以将此映射转换为 POJO 而不是原生 JavaScript 映射。
示例
doc.myMap.toJSON() instanceof Map; // true
doc.myMap.toJSON({ flattenMaps: true }) instanceof Map; // false 
