控制台在显示现有对象的属性时显示未定义


var errors = validationResult(req);
console.log("errors: errors");
if (!errors.isEmpty()) {
res.render('signIn-signUp', {
'error1': errors.msg + " " + errors.value + " Please signUp again!!"
});
} else {
var id = 0;
pool.query("Select Max(C_Id) as C_Id from customer", function(error, rows) {
if (error) {
console.log("Database error: ", error);
res.render('signIn-signUp', {
'error1': "database error: " + error + "please sign up again!"
});

上面的代码是nodeJ代码库的一部分。在上面的代码片段中,当我在控制台上记录错误对象时,它将所有属性显示为:

errors: [{
value: 'a',
msg: 'Must be at least 5 char long',
param: 'Password',
location: 'body'
}]

但是,当我在控制台上显示对象的各个属性时,它显示为未定义。也就是说,console.log(errors.msg(正在返回undefined。这是什么原因?

如何显示对象中存在且未定义的属性?

似乎errors对象是一个数组(因此是[](。试试这个:

console.log(errors[0].msg);

最新更新