javascript - Mongoose:如何在变量给定的索引处更新数组中的值?

标签 javascript arrays node.js mongodb mongoose

<分区>

options.votes 是一个数组。

此代码有效:

Poll.findOneAndUpdate({title},{$inc:{'options.votes.0':1}}

我需要为变量替换 0。

这不起作用:

const query = 'options.votes.'+variable
Poll.findOneAndUpdate({title},{$inc:{query:1}}

感谢帮助

最佳答案

它只是一个带有字符串键的对象

var obj = {};

obj['options.votes.'+variable] = 1;

Poll.findOneAndUpdate({title},{$inc:obj})

或者使用 ES2015 和动态键

const query = 'options.votes.'+variable;
Poll.findOneAndUpdate({title},{$inc:{[query]:1}})

关于javascript - Mongoose:如何在变量给定的索引处更新数组中的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46063873/

相关文章:

javascript - React 获取在 props 中传递的原生元素或子元素的高度和宽度

javascript - django rest framework API编辑功能

arrays - Swift 2 中通过索引比较数组

python - np.array 的裁剪部分

arrays - 代码优化: Arrays vs collections

node.js - 如何查找nodejs版本

javascript - C3条形图-自定义X轴标签

node.js - 将 SASS 与 ReactJS 和 Webpack 结合使用

javascript - Angular 和 secret key

javascript - 动画 Jquery 的问题