ドキュメントによると、ElementArrayFinder
(element.all()
呼び出しの結果)内にある要素の数を取得する方法は2つあります。
$$(".myclass").length
、文書化 ここ :...配列の
length
はlength
によって検出された要素のElementArrayFinder
に等しく、各結果は要素に対してアクションを実行した結果を表します。
$$(".myclass").count()
、文書化 ここ :
ElementArrayFinder
で表される要素の数を数えます。
これら2つの方法の違いは何ですか?どちらを優先する必要がありますか?
$$(".myclass").length
要素の長さを正しく取得するには、promiseを解決する必要があります。
_// WORK
$$(".myclass").then(function(items){
items.length;
});
// DOES NOT WORK
$$(".myclass").length;
_
$$(".myclass").count()
$$('.myclass').length
のラッパーであり、promise自体であり、_.length
_のようにpromiseを解決する必要はありません。
_$$(".myclass").count();
_
どちらを優先する必要がありますか?
関係する$$(".myclass")
と.then(function(items){...})
を見つけるときに複雑なビジネスがない限り、_items.length
_の方がパフォーマンスが向上します。
それ以外の場合は、常に$$(".myclass").count()
を使用する必要があります。