1

SQLデータベースからこのように設定されたリストがあります

 Team     Name    Date Joined
 TeamA    David   June 3
 TeamB    Mike    July 2
 TeamC    Mark    June 7
 TeamA    Lisa    July 2
 TeamA    Stacy   June 7
 TeamB    Tracy   July 2
 TeamC    Joe     June 3

リストを保存し、javascript を使用して TeamA、TeamB、または TeamC に参加したすべての人と日付を印刷できるようにしたいと考えています。これにアプローチする方法がわかりませんが、配列について考えていましたが、すべてのアイテムを組み合わせる方法がわからないため、それが私の目標に到達しないとは思いません...誰かアイデアを持っていますか

4

2 に答える 2

1

チームをオブジェクトの配列として定義できます。

var arr = [

 {"team":"TeamA", "name":"David"},
 {"team":"TeamB", "name":"Mike"},
 {"team":"TeamC", "name":"Mark"},
 {"team":"TeamA", "name":"Lisa"},
 {"team":"TeamA", "name":"Stacy"},
 {"team":"TeamB", "name":"Tracy"},
 {"team":"TeamC", "name":"Joe"}

]

柔軟性があり、必要な数のチーム/人を追加できます。次に、単純なフィルター関数を定義できます。

var teamFilter = function(obj) {
    return obj.team == this.criteria;
}

そして、次のように呼び出して、新しいフィルター処理された配列を作成できます。

arr.criteria = "TeamA";

var arrTeamA = arr.filter(teamFilter, arr);

デモ: http://jsfiddle.net/6f2NN/

于 2013-09-18T03:53:34.050 に答える
1

各チーム メンバーの名前を保存するだけの場合は、次のように使用できます。

var Teams = {
    TeamA: ["David", "Lisa", "Stacy"],
    TeamB: ["Mike", "Tracy"],
    TeamC: ["Mark", "Joe"]
};

これらの値をブラウザのコンソールに出力したい場合

for (team in Teams){
    console.log(team+" : "+Teams[team].join(", "));
}
于 2013-09-18T03:36:07.110 に答える