Javascript 通过更新完整对象删除对象字段
这是存储在mongoDB文档中的一些数据:Javascript 通过更新完整对象删除对象字段,javascript,mongodb,Javascript,Mongodb,这是存储在mongoDB文档中的一些数据: { _id: "123" order: 1 parent: "Dueqmd64nTxM3u9Cm" type: "article" unit: "kg" } var data = { order: 2 parent: "Dueqmd64nTxM3u9Cm" type: "article" unit: "kg" } Collection.update( { _id:
{
_id: "123"
order: 1
parent: "Dueqmd64nTxM3u9Cm"
type: "article"
unit: "kg"
}
var data = {
order: 2
parent: "Dueqmd64nTxM3u9Cm"
type: "article"
unit: "kg"
}
Collection.update(
{ _id: 123 },
{ $set: data }
);
虽然所有保存的数据都将首先进行计算和验证(这就是为什么我不只使用data={order:2}
),但我正在使用complete对象更新文档:
{
_id: "123"
order: 1
parent: "Dueqmd64nTxM3u9Cm"
type: "article"
unit: "kg"
}
var data = {
order: 2
parent: "Dueqmd64nTxM3u9Cm"
type: "article"
unit: "kg"
}
Collection.update(
{ _id: 123 },
{ $set: data }
);
这是有效的
但是如果我想删除一些值,它就不起作用了:
var data = {
order: 2
parent: "Dueqmd64nTxM3u9Cm"
type: "article"
unit: undefined
}
Collection.update(
{ _id: 123 },
{ $set: data }
);
我希望
单元
-字段被删除。但事实并非如此……要删除字段,请使用运算符:
data = {
unit: ""
};
Collection.update(
{ _id: 123 },
{ $set: data }
);