That doesn't make sense to me. If the value is undefined, then you must define the variable as follows:
if(typeof something === 'undefined')
var something = 'something';
But in your case, the value is already testing, if it exists, then define a variable, so it makes no sense. So you just use the variable there:
var defValue = this._oIn._mMet[sM].returns.defVal;
You can also check to see if to use if not specified like this:
var defValue = this._oIn._mMet[sM].returns.defVal || 'undefined';