In a JavaScript, the correct way to check if an object property is undefined is to use the
typeof
operator.
The typeof operator returns a string indicating the type of the unevaluated operand.
For example:
console.log(typeof 42);
// expected output: "number"
console.log(typeof 'blubber');
// expected output: "string"
console.log(typeof true);
// expected output: "boolean"
console.log(typeof declaredButUndefinedVariable);
// expected output: "undefined";
If the value is not defined, typeof returns the ‘undefined’ string.
How to check if a JavaScript object property is undefined?
Let's create a user object with the following properties in it:
// using Object Literals
var user = {
emailId : 'ramesh@gmail.com',
age : 29,
getFullName : function (){
return user.firstName + " " + user.lastName;
}
};
Note that firstName and lastName properties not added to the above user object.
Now, let's create a isUndefined() method and test firstName and lastName properties:
function isUndefined(user) {
if(typeof user.firstName === 'undefined'){
console.log("User first name is undefined");
}
if(typeof user.lastName === 'undefined'){
console.log("User last name is undefined");
}
}
Let's call the above function:
isUndefined(user);
Output:
User first name is undefined
User last name is undefined
Complete code
// using Object Literals
var user = {
emailId : 'ramesh@gmail.com',
age : 29,
getFullName : function (){
return user.firstName + " " + user.lastName;
}
};
function isUndefined(user) {
if(typeof user.firstName === 'undefined'){
console.log("User first name is undefined");
}
if(typeof user.lastName === 'undefined'){
console.log("User last name is undefined");
}
}
isUndefined(user);
Output:
User first name is undefined
User last name is undefined
Comments
Post a Comment
Leave Comment