1

たとえば、次のXMLドキュメントがあり、jQueryを使用して解析する必要があるとします。

    <books>
        <book>
            <title>Gone with the Wind!</title>
        </book
        <book>
            <title>Lord of the Rings</title>
        </book>
        <book>
            <title>4 hour work week</title>
        </book
    </books>

最初の本の「タイトル」を取得するため。次のjQuery関数を使用できます。

    // let's assume xmldoc contains the above document.
    $(xmldoc).find("title").first().text();

これにより、最初の本の「タイトル」、つまり「風と共に去りぬ」がわかります。。さて、ここでの私の質問は、これは最初の本の「タイトル」を取得するための効率的な方法ですか?

恐れ入りますが、内部的にjQueryがすべての本のタイトルを解析してから、first()を返している可能性があります。興味のない本を解析するのにCPUサイクルを無駄にしているのではないかと思います。

何か考えられる場合は、代替案を提案してください。前もって感謝します!

PS:プロジェクトの残りの部分では、XML解析にjQueryがすでに使用されているため、ブラウザーのネイティブjavascriptAPIを使用できないことに注意してください。

4

1 に答える 1

4

私はその効率性について話すことはできませんが (なぜベンチマークしないのですか?)、同じ効果を達成するために単一のセレクターのみを使用する別の式を次に示します。

$( "book:first-child title", xmldoc ).text()

@VincentMcNabb が指摘するように、jQuery は可能な限りブラウザーの組み込み機能を使用しようとします。

于 2012-04-09T21:12:36.470 に答える