如果我的对象 为空,我正在测试这个案例,所以我故意在数据库中创建了一个查询,我应该评估 else if 语句,但我在控制台中没有得到任何响应。
我做错了什么?
user.loginUser = (jUserData, res) => {
var aData = [
jUserData.email,
jUserData.mobile_number,
0
]
var sQuery = 'SELECT * FROM users WHERE email = ? AND mobile_number = ? AND active = ?'
function isEmpty(obj) {
for (var key in obj) {
if (obj.hasOwnProperty(key))
return false;
}
return true;
}
db.each(sQuery, aData, function (err, jRow) {
console.log(jRow)
if (err) {
console.log('BAD, user not logged in')
return res(true, {
status: "INTERNAL SERVER ERROR"
})
}
if (isEmpty(jRow)) {
console.log('NOT FOUND')
return res(true, {
status: "NOT FOUND"
})
}
console.log('GREAT, user logged in')
return res(false, jRow)
console.log(jRow)
})
}
答案 0 :(得分:9)
您可能希望使用Object.keys()
或其他Object
功能,此代码可能会对您有所帮助
function isEmpty(obj) {
return !obj || Object.keys(obj).length === 0;
}