为了账号安全,请及时绑定邮箱和手机立即绑定

好奇,为什么eq不支持index为负数?

j = +i + ( i < 0 ? len : 0 );单看哪里,这句代码根本没有必要
return this.pushStack( j >= 0 && j < len ? [ this[j] ] : [] );这句完全可用用i直接判断

正在回答

4 回答

  1. eq支持负数——从后向前取元素

  2. j = +i + ( i < 0 ? len : 0 ); 将值为负的索引转换成对应正数所对应的索引

比如:$('li').eq(-1)    假如有10个li元素: $('li').length = 10.    j = +i + ( i < 0 ? len : 0 ); 则 j = 9. 也就是取 this.pushStack(this[9]) == $('li').eq(9)的jQuery对象。  可以自己验证一下。

3 回复 有任何疑惑可以回复我~

好像支持负数的吧,j = +i + ( i < 0 ? len : 0 );这句话就是让他支持负数,即将负数的下标转换成真正的第几个索引,this数组里可是索引从0开始的

0 回复 有任何疑惑可以回复我~

哪里说了 eq 不支持负数

0 回复 有任何疑惑可以回复我~

好像是如此

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信