so I have the following object:
{ err:
{ message: 'Validation failed',
name: 'ValidationError',
errors:
{ username:
{ properties: [Object],
message: 'Path `username` is required.',
name: 'ValidatorError',
kind: 'required',
path: 'username',
value: '' } } } }
err.errors
err.errors.username.message
for(var error in err.errors){
messages.push(error.message);
}
messages
console.log(typeof error);
string
typeof
err.errors.username
object
string
You are accessing
key
fromobject which is another
object.
errorin
for-inwill return
key->
usernamehence you need to access that key from object and then
messagefrom that
username` object.
Try this:
var obj = {
err: {
message: 'Validation failed',
name: 'ValidationError',
errors: {
username: {
properties: [Object],
message: 'Path `username` is required.',
name: 'ValidatorError',
kind: 'required',
path: 'username',
value: ''
},
password: {
properties: [Object],
message: 'Path `password` is required.',
name: 'ValidatorError',
kind: 'required',
path: 'password',
value: ''
}
}
}
};
var messages = [];
for (var error in obj.err.errors) {
messages.push(obj.err.errors[error].message);
}
alert(messages);