.filter(':last')
我想知道和之间有什么区别.last()
吗?
对我来说,看起来他们也在做同样的事情,但我是 jQuery 的新手。如果结果没有差异,推荐哪一个还是只是个人喜好问题?
.filter(':last')
我想知道和之间有什么区别.last()
吗?
对我来说,看起来他们也在做同样的事情,但我是 jQuery 的新手。如果结果没有差异,推荐哪一个还是只是个人喜好问题?
last
通过说“给我选择中的最后一个元素”来工作。只需两个函数调用和四行代码即可。它不能以更快的方式完成。
filter(':last')
,然而,要复杂得多。它是一个更加灵活的系统,允许返回多个元素,如果这是您想要的,或者多个条件,或者两者的混合。它的效率要低得多,因为它必须解决您想要的问题。例如,解析':last'
需要一点时间,而使用last
函数它是一个简单的属性查找。
last
是迄今为止更有效的。
:last
- 选择最后一个匹配的元素。
last()
- 将匹配元素的集合减少到集合中的最后一个。
如您所见,它们做同样的事情(无论如何,就最终结果而言)。
last()
比 :last 稍快(尽管您可能没有注意到,但知道总是好的)。
.filter(":last")
,尽管从 中取得了最好的(性能方面):last
,但仍然涉及更多的函数调用并且仍然比last()
- 尽管它确实有其优势(请参阅@lonesomeday的答案)。
然而,我的建议是一般使用last()
而不是前者。