使用未定义的变量查询mongoose数据库是否可以接受?

时间:2017-05-22 05:37:06

标签: node.js mongodb mongoose

从代码中可以看出,如果没有定义param,我将通过查询未定义的变量来返回所有用户。这样做是否可以接受,或者是否有一些我看不到的缺点?

get: function(param, callback){
    var query;
    if (param) {
        query = {username: param}
    }
    User.find(query, (err, result) => {
        if (err) {
            callback(err, null);
            return;
        }
        callback(null, result);
    });
}

1 个答案:

答案 0 :(得分:0)

the source可以看出,mongoose会为你解决这个问题:

Model.find = function find(conditions, projection, options, callback) {
  if (typeof conditions === 'function') {
    callback = conditions;
    conditions = {};

所以,你可以传递未完成的conditions

正如评论中所建议的那样,我会改为:

var query = {} 

所以你总是传递一个空物体。