2016-05-12 16 views
0

次のコードスニペットを使用していますが、私は何か間違ったことをしているので、複数の値を返していません。私は専門家の意見が必要です。forループを使用してJavaScriptの関数から複数の値を返します

function returnValues(testArray) 
{ 
    var accountId, orders, abstractOrders, titleOrder; 

    var childOrders = new Array(); 
    for(var i = 0; i < testArray.length; i++) 
    { 
     accountId = typeof testArray[i] === 'undefined'?'':testArray[i].id; 

     orders = getOrderofParentAccount(accountId); 
      abstractOrders = abstractOrderYTD(orders); 
      titleOrder = titleOrderYTD(orders); 

      childOrders[abstractOrders,titleOrder]; 
    } 

    return childOrders; 
} 
+2

'childOrders [abstractOrders、titleOrder];'右のすべてではありませんが。 JS配列に2つのインデックスを使用することはできません。 – ssube

+1

はい、おそらく 'childOrders.push([abstractOrders、titleOrder]) 'を意味しますか – floribon

+0

返すのは*正確* *でしたか? *正確には*実際には何を返しますか?エラーメッセージはありますか? –

答えて

5

おそらく、オブジェクトの配列戻りたい:

function returnValues(testArray) 
{ 
var accountId, orders, abstractOrders, titleOrder; 

var childOrders = new Array(); 
for(var i = 0; i < testArray.length; i++) 
{ 
    accountId = typeof testArray[i] === 'undefined'?'':testArray[i].id; 

    orders = getOrderofParentAccount(accountId); 
     abstractOrders = abstractOrderYTD(orders); 
     titleOrder = titleOrderYTD(orders); 

     childOrders.push({abstract: abstractOrders,title: titleOrder}); //<-Changed 
} 

return childOrders; 
} 

//To retrieve the values 
var orders = returnValues(yourarray); 
for(var i in orders){ 
    console.log("====="+i+"======"); 
    console.log('Abstract Orders:'); 
    console.log(orders[i].abstract); 
    console.log('Title Orders:'); 
    console.log(orders[i].title); 
} 
+0

答えを更新して、これらの値を取得するにはどうすればいいですか? –

+0

完了。しかし、あなたがGoogleにできる一般的なものです。 – dan08

+0

私はそのようなものを見つけることができませんでした。とにかく、そのjavascript –

関連する問題