当我使用var时,mongoose更新失败但是当我使用常量时成功?

问题描述 投票:0回答:1

我尝试编写一个js脚本来在mongo中的数组中拉取一个元素。

//这个不起作用,返回“{ok:1,nModified:0,n:1}”

db.userModel.updateOne({"_id":userId}, {"$pull" : {"draw.awardList":{oldActiveCode : oldTime}}}, function(err, res) ..

//这个工作,

db.userModel.updateOne({"_id":userId}, {"$pull" : {"draw.awardList":{"1000812001401": 1553503004448}}}, function(err, res)

//但是当我比较时,它看起来是平等的

console.log("+++",("1000812001401" === oldActiveCode), (oldTime === 1553503004448))

输出:+++ true true

node.js mongoose
1个回答
1
投票

{oldActiveCode : oldTime}{"1000812001401": 1553503004448}不一样。前者设置oldActiveCode财产,后者设置1000812001401财产。

如果属性应该是1000812001401,它应该是计算属性,{[oldActiveCode] : oldTime}

© www.soinside.com 2019 - 2024. All rights reserved.