1.6 KiB
1.6 KiB
title
title |
---|
Check if an Object has a Property |
Check if an Object has a Property
Basic Solution:
let users = {
Alan: {
age: 27,
online: true
},
Jeff: {
age: 32,
online: true
},
Sarah: {
age: 48,
online: true
},
Ryan: {
age: 19,
online: true
}
};
function isEveryoneHere(obj) {
if (
obj.hasOwnProperty('Alan') && obj.hasOwnProperty('Jeff') &&
obj.hasOwnProperty('Sarah') && obj.hasOwnProperty('Ryan')
) {
return true;
}
return false;
}
Code Explanation
- Checks whether object contains all users by using the
hasOwnProperty
method for each name with the&&
operator to return atrue
orfalse
value.
Advanced Solution:
let users = {
Alan: {
age: 27,
online: true
},
Jeff: {
age: 32,
online: true
},
Sarah: {
age: 48,
online: true
},
Ryan: {
age: 19,
online: true
}
};
function isEveryoneHere(obj) {
return [
'Alan',
'Jeff',
'Sarah',
'Ryan'
].every(name => obj.hasOwnProperty(name));
}
Code Explanation
- Uses an array with all of the names which should be present in the object.
- The
every
method is used to validate all of names used in conjunction with thehasOwnProperty
method result in a value oftrue
being returned during each iteration. - If at least one name is not found using the
hasOwnProperty
method, theevery
method returnsfalse
.