ale*_*cxe 8 javascript selenium angularjs selenium-webdriver protractor
根据文档,有两种方法可以获得ElementArrayFinder(element.all()调用的结果)内部有多少元素:
$$(".myclass").length,记录在这里:...数组
length等于length由其找到的元素,ElementArrayFinder并且每个结果表示对元素执行操作的结果.
$$(".myclass").count(),记录在这里:计算由...表示的元素数
ElementArrayFinder.
这两种方法有什么区别,应该首选哪一种?
Lin*_*ham 15
$$(".myclass").length需要解决正确获取元素长度的承诺.
// WORK
$$(".myclass").then(function(items){
items.length;
});
// DOES NOT WORK
$$(".myclass").length;
Run Code Online (Sandbox Code Playgroud)
$$(".myclass").count()一个包装器,$$('.myclass').length它本身就是一个承诺,并不需要解决这样的承诺.length
$$(".myclass").count();
Run Code Online (Sandbox Code Playgroud)
应该首选哪一个?
除非在定位$$(".myclass")和.then(function(items){...})参与时有一些复杂的业务,否则items.length会提供更好的性能.否则$$(".myclass").count()应始终使用.
| 归档时间: |
|
| 查看次数: |
12697 次 |
| 最近记录: |