2016-12-09 12 views
0

他の配列の要素から配列の要素を取得する方法について質問があります。私はチームスコアの配列から得点できません。名前のn番目の文字が返されていることがわかります。オブジェクトを配列する要素

function runData() { 
    var Teams = ["bears", "pats", "qbs"]; 

    var bears = [34, 45, 23]; 
    var pats = [24, 33, 41]; 
    var qbs = [33, 41, 28]; 

    for (t = 0; t < Teams.length; t++) { 
     var teamToGet = Teams[t]; 
     getScore(); 
     var para = document.createElement("p"); 
     pageOut = teamToGet; para.innerHTML = pageOut; 
     document.getElementById("p1").appendChild(para); 
    } 

    function getScore() { 
     var score = teamToGet[t]; 
     teamToGet += "-" + score; 
    } 
} 
+0

コードの書式設定が誤っていると思いますか? – TankorSmash

+2

名前で変数にアクセスしようとしている場合は、そうしないでください。代わりに 'scores = {" bears ":[34,45,23]、...};オブジェクトを持ってから、' scores [teamToGet] 'にアクセスしてください。 –

+1

'getScore()'メソッドの中で、 't 'はどのように定義されていると認識されますか?そのクロージャスコープ内には存在しません。パラメータを介して変数を渡す必要があります。 – KDOT

答えて

0

他のチームの配列ではなくチーム配列に文字列を設定しているからだと思います。

チームをループすると、チーム名の文字列だけでなく、チーム名とスコア配列を持つオブジェクトが取得されます。

function runData() { 

    var bears = { name : "bears", scores : [ 34, 45, 23 ] }; 
    var pats = { name : "pats", scores : [ 1, 2, 3 ] }; 
    var qbs = { name : "qbs", scores : [ 33, 41, 28 ] }; 

    var Teams = [ bears, pats, qbs ]; 

    for(var t = 0; t < Teams.length; t++) { 
     var teamToGet = Teams[t]; // will be an object 
     var score  = getScore(teamToGet); 
     var para  = document.createElement("p"); 
     // not sure what you're doing here 
     // pageOut = para.innerHTML = pageOut; 
     // document.getElementById("p1").appendChild(para); 
    } 

    function getScore(team) { 
     // not exactly sure what you're doing here. 
     // I'll just return the first score. 
     return team.name += "-" + team.scores[0]; 
    } 
} 
+0

あなたのリフォーマットは、私が好きなのですが、多くの標準スタイルのガイドには合致していません。私はほとんどのスタイルガイドよりも多くのスペースを使用する傾向がありますが、あなたのやり方に似ていますが、Google、Bloomberg、Reutersなどの場所で見られた全体的な標準は、 } {常に:これ}など。 –

+0

私は単にコードではなくSOの書式設定のためにインデントしました。私はコードフォーマットを最も適した場所に追加しました。あなたが '}'と 'function runData()'をコードスペースの外側にぶら下げているので、その意図は答えの形式でした。 – KDOT

関連する問題