0

ここに私のJavascriptコード。グローバルコンテキストであるドキュメントに毎回アクセスしようとする代わりに、アクティベーションオブジェクトにしました。これにより、読み取り/書き込みパフォーマンスを向上させることができます。

function initUI(){
        var doc = document,
            bd = doc.body,
            links = doc.getElementsByTagName("a"),
            i= 0,
            len = links.length;
        while(i < len){
            update(links[i++]);
        }
        doc.getElementById("go-btn").onclick = function(){
            start();
        };
        bd.className = "active";
    }

C#にも適用可能ですか?まあ言ってみれば、

var customObject = new CustomClass();メンバー変数として定義し、以下のようにアクセスすると、

void MyMethod()
{
var obj = customObject;
var name = obj.name;
//some code here
..
..
}

パフォーマンスが向上しますか?

4

1 に答える 1

2

いいえ、C#では同じではありません。

javascriptでは、DOMの読み取り/書き込みが非常に遅いため、DOMオブジェクトをキャッシュします。

通常のオブジェクトのプロパティをキャッシュする必要はありません。あなたがそれをするならば、それはいくつかのキャラクターを獲得することですが、パフォーマンスのためではありません。

C#では、DOMを処理する必要はありません。一部の文字を取得する場合を除いて、オブジェクトをキャッシュする必要はありません。

于 2012-05-05T07:45:49.097 に答える