Javascript相当于Ruby的`send`

前端之家收集整理的这篇文章主要介绍了Javascript相当于Ruby的`send`前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Dynamically access object property using variable11个
尝试循环我已经获得的所有更新字段并在保存之前动态更新它们.
Product.findOne({ _id: productNewData['_id'] },function (err,doc) {
  for (var key in productNewData) {
    # what do I do here?
  }
  doc.save();
});

我知道ruby有一个这样的发送方法

doc.send(key) = productNewData[key]

我想我可以验证给定的参数并使用eval.还有其他方法吗?

解决方法

它们是在Javascript中访问属性的两种方式:
使用点表示法或括号.例:
var foo = {bar: 42}
foo.bar // 42
foo["bar"] // 42
var v = "bar"
foo[v] // 42
foo.v // undefined

所以:

Product.findOne({ _id: productNewData['_id'] },doc) {
  for (var key in productNewData) {
     doc[key] = productNewData[key]
  }
  doc.save();
});

猜你在找的JavaScript相关文章