使用 eq(0) 和不使用它的区别

Difference between using eq(0) and not using it

当我想在具有 class .pizza 的单个元素上 运行 一个 jQuery 函数时,我这样做:

$('.pizza').hide();

这和使用 first() or eq(0) 有什么区别?

$('.pizza').eq(0).hide();

我的问题是因为我想将元素缓存到一个变量中以便多次使用它,我不知道这样做是否更好:

var element_pizza=$('.pizza').eq(0);

或者简单地说:

var element_pizza=$('.pizza');

注意:当我指的是单个元素时,我的意思是DOM中只有一个元素带有class披萨。

感谢您的宝贵时间。

当集合只包含一个匹配项时没有区别。

使用 .eq() 只会 select 一组中的一个特定匹配项。如果集合只有一个元素,那么它们将是等价的。

实际上,如果集合包含一个元素,则使用 .eq(0) 是一种浪费,因为这会导致创建新的 jQuery 对象。