Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 为什么可以';我是否将优先级队列存储到MongoDB中_Node.js_Mongodb_Mongoose_Schema_Priority Queue - Fatal编程技术网

Node.js 为什么可以';我是否将优先级队列存储到MongoDB中

Node.js 为什么可以';我是否将优先级队列存储到MongoDB中,node.js,mongodb,mongoose,schema,priority-queue,Node.js,Mongodb,Mongoose,Schema,Priority Queue,最近,我决定用优先级队列替换阵列,以便将我的用户作业列表存储到MongoDB中。我使用NodeJS和ExpressJS作为后端。我试图存储的优先级队列来自外部包,可以通过在终端中运行以下命令来安装该包: yarn add js-priority-queue 出于某种原因,优先级队列在将其存储到MongoDB之前工作良好。但是,下次我尝试从MongoDB中取出它并使用它时,它的功能缺失了。我在模式中将其类型声明为Schema.Types.Mixed。我是做错了什么,还是无法将实例化的类对象存储到

最近,我决定用优先级队列替换阵列,以便将我的用户作业列表存储到MongoDB中。我使用NodeJS和ExpressJS作为后端。我试图存储的优先级队列来自外部包,可以通过在终端中运行以下命令来安装该包:

yarn add js-priority-queue

出于某种原因,优先级队列在将其存储到MongoDB之前工作良好。但是,下次我尝试从MongoDB中取出它并使用它时,它的功能缺失了。我在模式中将其类型声明为Schema.Types.Mixed。我是做错了什么,还是无法将实例化的类对象存储到MongoDB中?

据我所知,在MongoDB中存储东西时,它们以二进制格式(BSON)存储为扩展JSON(EJSON)

const{EJSON}=require('bson');
const test=EJSON.stringify({a:new Date(),foo:function(){console.log('foo');})
console.log(test)/“{”a:{“$date”:“2020-07-07T14:45:49.475Z”}”

因此,任何类型的函数都会丢失。

存储可能会起作用,但读取量不会太大。因此,没有可能的方法读取它?您可以读取,但您将获得存储在数据库中的数据。