I have this code:
function getName(type, options) {
if (type == 'dog') {
var name = 'Rover';
}
else {
var name = options.name || 'Buddy'
}
return name;
}
alert(getName('cat'));
name
Cannot read property 'name' of undefined
var name = (options !== undefined && options.name) ? options.name : 'Buddy';
You can simplify the check to options && options.name || 'Buddy'
because every object is truthy.