The*_*eer 0 javascript mongodb node.js
在下面的代码中:
DbModels.prototype.updateById = function(_collection, id, field, value, callback) {
this.getCollection(_collection, function(error, sel_collection) {
if( error ) callback(error)
else {
sel_collection.update({_id: ObjectID.createFromHexString(id)}, {$set: {$[field].value:value}}, function(error, updated) {
if( error ) callback(error)
else callback(null, updated);
});
}
});
};
Run Code Online (Sandbox Code Playgroud)
我想使用变量字段的值作为$ set中变量的名称.我尝试使用以下代码$ [field] .value(正如您在上面的代码中看到的),这不起作用.有什么建议如何解决这个问题?
谢谢!
javascript中没有像php这样的语法${$var_name};
可以使用this[var_name]或window[var_name](对于浏览器中的全局变量),但除了当前范围之外无法获取局部变量eval,这肯定被认为是坏的.
考虑使用散列(对象)进行变量"作用域/命名空间".