美文网首页jQuery源码笔记.jpg
jQuery源码 仿栈与队列的操作

jQuery源码 仿栈与队列的操作

作者: 柠檬果然酸 | 来源:发表于2020-04-15 22:40 被阅读0次

本节内容
1.get()
2.eq()
3.slice()

jQuery既然是模仿的数组结构,那么肯定会实现一套类数组的处理方法,比如常见的栈与队列操作push、pop、shift、unshift、求和、遍历循环each、排序及筛选等一系的扩展方法。

jQuery提供了.get()、:index()、 :lt()、:gt()、:even()及 :odd()这类索引值相关的选择器,他们的作用可以过滤他们前面的匹配表达式的集合元素,筛选的依据就是这个元素在原先匹配集合中的顺序。

get()
获取指定某个元素,该方法如果不传入任何参数就是将jQuery转换成数组返回。

get: function( num ) {

    // Return all the elements in a clean array
    if ( num == null ) {
        return slice.call( this );
    }

    // Return just the one element from the set
    return num < 0 ? this[ num + this.length ] : this[ num ];
}

eq()
作用和get()方法一样,唯一的区别就是eq返回的是一个jQuery对象,get返回的是一个DOM对象。

eq: function( i ) {
    var len = this.length,
        j = +i + ( i < 0 ? len : 0 );
    return this.pushStack( j >= 0 && j < len ? [ this[ j ] ] : [] );
}

slice()
Query的考虑很周到,通过eq方法只能产生一个新的对象,但是如果需要的是一个合集对象要怎么处理?因此jQuery便提供了一个slice方法。

slice: function() {
    return this.pushStack( slice.apply( this, arguments ) );
}

相关文章

  • jQuery源码 仿栈与队列的操作

    本节内容1.get()2.eq()3.slice() jQuery既然是模仿的数组结构,那么肯定会实现一套类数组的...

  • jQuery源码二周目#4 仿栈与队列的操作

    仿栈与队列的操作 这一篇内容应该算是所有篇幅中最简单的,也就懒得多费笔墨去讲解,直接上代码。 jQuery是类数组...

  • 实 验 四 栈和队列

    一、实验目的与要求:## 1、理解栈和队列抽象数据类型。 2、掌握栈和队列的存储结构和操作实现。 3、理解栈和队列...

  • 数据结构:栈与队列

    本文内容:一、栈1、什么是栈?2、栈的操作集.3、栈的 C 实现.二、队列1、什么是队列?2、队列的操作集.3、队...

  • 算法-栈和队列算法总结

    栈和队列算法总结 1 模拟 1.1 使用栈实现队列 1.2 使用队列实现栈 2 栈的应用 2.1 栈操作 2.2 ...

  • leecode刷题(26)-- 用栈实现队列

    leecode刷题(26)-- 用栈实现队列 用栈实现队列 使用栈实现队列的下列操作: push(x) -- 将一...

  • 未知分类

    栈和队列的区别? 栈的插入和删除操作都是在一端进行的,而队列的操作却是在连端进行的。 队列先进先出,栈后进后出 栈...

  • 数据结构——队列

    源码地址请点击此处 队列也是一种操作受限的线性表,和栈只能在一端操作不同,队列可以在两端进行操作,这两端分别叫做队...

  • LeetCode 每日一题 [12] 用队列实现栈

    LeetCode 用队列实现栈 [简单] 使用队列实现栈的下列操作: push(x) -- 元素 x 入栈pop(...

  • jQuery 动画队列

    jQuery 动画队列 动画队列的方法: 我们知道jQuery提供了以下几种方法来操作动画队列: stop([cl...

网友评论

    本文标题:jQuery源码 仿栈与队列的操作

    本文链接:https://www.haomeiwen.com/subject/sngddhtx.html