我知道java脚本是动态的,我想知道是否有选项 返回类似于
的内容 Inte.prototype.getM = function(sMethod) {
return this._mMet[sMet].ret &&
return this._mMeth[sMet].ret.default;
};
目前,当我按原样尝试时,我得到了错误(这并不奇怪:))。
答案 0 :(得分:2)
您可以使用数组返回:
return [this._mMet[sMet].ret,this._mMeth[sMet].ret.default];
或通过对象:
return {'one': this._mMet[sMet].ret, 'two': this._mMeth[sMet].ret.default};
修改强>
根据OP评论,他希望对这些值进行一些验证:
if (typeof this._mMet[sMet].ret == 'undefined' || typeof this._mMeth[sMet].ret.default == 'undefined') {
return false;
} else {
return {'one': this._mMet[sMet].ret, 'two': this._mMeth[sMet].ret.default};
}
答案 1 :(得分:1)
您可能需要使用对象数组吗? 例如:
var array = [];
array.push(this._mMet[sMet].ret);
array.push(this._mMet[sMet].ret.default);
return array;
答案 2 :(得分:0)
你只能回报一件事。但它可以是数组:
Inte.prototype.getM = function(sMethod) {
return [this._mMet[sMet].ret, this._mMeth[sMet].ret.default];
};
答案 3 :(得分:0)
您可以返回一个对象
Inte.prototype.getM = function(sMethod) {
return {
ret: this._mMet[sMet].ret,
retDefault: this._mMeth[sMet].ret.default
};
};
然后您可以使用
访问它var returnObject = inte.getM(arguements);
var ret = returnObject.ret //equvalent to returnObject['ret'];
var retDefault= returnObject.retDefault //equivalent to returnObject['retDefault'];
答案 4 :(得分:0)
最好的办法是
function a(){
var first=firstObject;
var second=secondObject;
return {first:first,second:second};
}
然后使用
a().first // first value
a().second // second value
答案 5 :(得分:0)
尝试以数组形式返回:
Inte.prototype.getM = function(sMethod) {
return new Array(this._mMet[sMet].ret,this._mMeth[sMet].ret.default);
};