JSLIte eq指定匹配元素的集合为的索引的哪个元素,用js 的slice函数来实现

eq

指定匹配元素的集合为的索引的哪个元素。一个整数,指示元素的位置,以 0 为基数。
eq(index) ⇒ collection
eq(-index) ⇒ collection数组

js$("div").eq(0)//⇒ 返回数组第一个节点数组 [div#box.boxOne.box2.box3, init: function…]
$("div").eq(-1)//⇒ 倒数第一个节点数组
$("div").eq(-2)//⇒ 倒数第二个节点数组

JSLIte 实现方法

内部使用js的slice函数来实现方法 .eq 接口函数

jseq: function(idx){
    return idx === -1 ? this.slice(idx) : this.slice(idx, + idx + 1)
}

slice 介绍

对于array对象的slice函数,
返回一个数组的一段。(仍为数组)this

arrayObj.slice(start, [end])

参数 说明
arrayObj 必选项。一个 Array 对象。
start 必选项。arrayObj 中所指定的部分的开始元素是从零开始计算的下标。
end 可选项。arrayObj 中所指定的部分的结束元素是从零开始计算的下标。

说明

slice 方法返回一个 Array 对象,其中包含了 arrayObj 的指定部分。
slice 方法一直复制到 end 所指定的元素,可是不包括该元素。
1. 若是 start 为负,将它做为 length + start处理,此处 length 为数组的长度。
2. 若是 end 为负,就将它做为 length + end 处理,此处 length 为数组的长度。
3. 若是省略 end ,那么 slice 方法将一直复制到 arrayObj 的结尾。
4. 若是 end 出如今 start 以前,不复制任何元素到新数组中。code

相关文章
相关标签/搜索