2009-05-28 11 views
1

私はDBに2つのテーブル有するMethodIDどのようにjavascriptでリレーショナル構造を構築するには?</p> <p>1-要素:</p> <ul> <li>ELEMENTID</li> <li>のElementName</li> </ul> <p>-2-方法:

  • ELEMENTID
  • MethodData

そう要素とメソッドの間には多くの関係への1つがあり、

私はasp.netを使用して、これらのテーブルのデータをロードし、私が何をしたいのか

は、これらを送信することですデータを私のjavascriptに渡し、javascriptはこれらのデータに対していくつかの機能を実行します。

たとえば、すべての要素をループし、各要素のメソッドを取得し、各メソッドのデータでいくつかの処理を行います。

私はjaascriptのクラスとしてこれを作ってみましたが、私の自己は、多くのことを書いた、要素および方法のための

まず2クラス、メソッド

ための要素2 - のために、その後2つの配列の1-

はとメソッド配列内で私が書いた本:私のコードが遅い作ら

this.findByElementId = function(elementId) { 
    var result = []; 
    for (var i = 0; i < this.methods.length; i++) { 
     if (elementId === this.methods[i].methodElement) { 
      result.push(this.methods[i]); 
     } 
    } 
    return result; 
} 

私の質問は、より専門的なコードと処理の高速化のためにjavascriptでこのリレーショナル構造を表現する方法ですか?

答えて

0
function Element() { 
this.id; 
this.type; 
this.methods = new Array(); 

}

function Method() { 
    this.id; 
    this.methodType; 
    this.methodData; 
    this.methodElement; 
    this.methodRank; 
} 
1

私はこのようなことを自分で試みたことはありませんが、人々はJSINQのように、JavaScript用のLINQ-esqueライブラリを書いています。 (このページは、ページ下部の他のJS LINQライブラリにもリンクしています)。

「JavaScript配列、DOMノードリスト、または独自の列挙型に対して任意の複雑なクエリを書くことができますあなたが欲しいもの。

+0

良いリンク、しかし、私は、これは私のコードが遅く作ることが怖いですが、あなたが燃えるスピードが必要な場合はその素敵な、 –

+0

をしようと、あなたはあなたの特定の状況にコーディングする必要が;一般的な解決策はめったにうまくいきません。なぜなら、あなたは通常、ユーティリティのスピードを犠牲にしているからです。 –

+0

私はこのようなユーティリティを使用しない場合、私のコードは良いですか? –

関連する問題