分析jQuery源码时记录的一点感悟  
    1.  链式写法  
    这是jQuery语法上的最大特色,也许该改改POJO里的set方法,和其他的非get方法什么的,可以把多行代码合并,减去每次敲打对象变量的麻烦  
    2.  动态参数  
    偶尔使用Java的动态数组,取出调用时参数个数的限制,可以减少对同一个方法的反复调用  
    3.  弱化类型  
    偶尔将参数类型设为Object,多使用泛型,可以减少方法数,简化调用时的类型转换,类型转换在方法内进行  
    4.  容易扩展  
    需要扩展功能时,尽量保持最小需要继承的类或实现的接口  
    5.  一个接口多种用途  
    如果可以的话,通过多变的参数,将多个接口合并为一个  
    6.  尽可能的复用和必要的迭代  
    减少代码行数,结构清晰,便于维护,初学者必须要掌握技巧  
    7.  默认值参数法  
    返回的默认值,可以做为参数传入,当作局部变量使用  
    8.  短小精悍的接口命名,清晰的参数命名

分析jQuery源码时记录的一点感悟的更多相关文章

  1. js便签笔记(9)——解读jquery源码时记录的一些知识点

    近来一直利用业余时间在看jquery2.1.1源码,大约看了两千行了.平时看的时候,做了一些笔记,贴出来分享. 1. Array.prototype.slice.call 可以将伪数组转化为真正的数组 ...

  2. 读艾伦的jQuery的无new构建,疑惑分析——jquery源码学习一

    背景: 有心学习jquery源码,苦于自己水平有限,若自己研究,耗时耗力,且读懂之日无期. 所以,网上寻找高手的源码分析.再经过自己思考,整理,验证.以求有所收获. 此篇为读高手艾伦<jQuer ...

  3. 逐行分析jQuery源码

    注意:本次源码分析选择2.0.3(因为不支持IE6.7.8,就少了很多兼容的hack的写法,对了解jQuery的实现原理有很大的帮助) 1.jQuery有不同的版本,从2.x版本便不再支持IE6.7. ...

  4. JQuery源码阅读记录

    新建html文件,在浏览器中打开文件,在控制台输入consoole.log(window);新建html文件,引入JQuery后在浏览器中打开,在控制台同样输入consoole.log(window) ...

  5. [转] jQuery源码分析-如何做jQuery源码分析

    jQuery源码分析系列(持续更新) jQuery的源码有些晦涩难懂,本文分享一些我看源码的方法,每一个模块我基本按照这样的顺序去学习. 当我读到难度的书或者源码时,会和<如何阅读一本书> ...

  6. jquery 源码分析

    想给自己一个任务,接下来要分析jquery源码,然后按照jquery的思想打造一个适合webkit的类jquery微框架,一切从模仿起!

  7. jquery源码分析之一前言篇

    1.问:jquery源码分析的版本是什么? 答:v3.2.1 2.问:为什么要分析jquery源码? 答:javascript是一切js框架的基础,jquery.es6.vue.angular.rea ...

  8. jQuery源码分析之整体框架

    之前只是知道jQuery怎么使用,但是我觉得有必要认真的阅读一下这个库,在分析jQuery源码之前,很有必要对整个jQuery有个整体的框架概念,才能方便后面对jQuery源码的分析和学习,以下是我总 ...

  9. jQuery源码分析学习--资料收集--更新中

    1.逐行分析jQuery源码的奥秘 - 网易云课堂  http://study.163.com/course/courseMain.htm?courseId=465001#/courseDetail? ...

随机推荐

  1. finger-guessing game:1场景搭建

    场景搭建 //初始化legend组件 init(50, "div_caiquan", 800, 400, main); //定义游戏层 //游戏背景层,结果显示层,点击层 var ...

  2. having只用来在group by之后,having不可单独用,必须和group by用。having只能对group by的结果进行操作

    having只能对group by的结果进行操作 having只能对group by的结果进行操作 having只能对group by的结果进行操作 having只用来在group by之后,havi ...

  3. Download Hacking Team Database from torrent using magnet link

    20元现金领取地址:http://jdb.jiudingcapital.com/phone.html内部邀请码:C8E245J (不写邀请码,没有现金送) 国内私募机构九鼎控股打造,九鼎投资是在全国股 ...

  4. Android 实现页面跳转并传递参数教程

    首先我们来看一下实现的功能:     第二,我们看一下实现这个功能,总共会接触到哪些文件和代码. 1.实现本功能总共涉及如下6个文件 2.实现本功能,总共涉及如下6个文件中的如下代码: (1) 效果: ...

  5. Sales Order ORA-04062 FRM-40815 in EBS R12.2.4

    [oracle@ebs ~]$ su - oracle [oracle@ebs ~]$ source /u01/install/VISION/fs1/EBSapps/appl/APPSEBSDB_eb ...

  6. 发展受阻第一至四季/全集Arrested迅雷下载

    发展受阻 第一至四季 Arrested Development 1-4 (2013)本季看点:<发展受阻>讲述了一个很有钱的Bluth家庭的故事,主要聚焦家族里的各种古怪事和相互算计带来的 ...

  7. [Android Security] APK自我保护 - 代码乱序

    cp : https://segmentfault.com/a/1190000005095406 乱序原理 为了增加逆向分析的难度,可以将原有代码在 smali 格式上进行乱序处理同时又不会影响程序的 ...

  8. SQL中树形分层数据的查询优化

    在数据查询中,从2008开始SQL Server提供了一个新的数据类型hierarchyid,专门用来操作层次型数据结构. hierarchyid  类型对层次结构树中有关单个节点的信息进行逻辑编码的 ...

  9. Linux文本行倒序排列6种方法

    Linux文本行倒序排列6种方法 1. 命令方法: nl filename | sort -nr | cut -f2 这个方法很unix风格,使用多命令组合完成某种功能是典型的unix特点 单命令: ...

  10. 升级pip后出现 ImportError: cannot import name main

    原文链接   https://blog.csdn.net/accumulate_zhang/article/details/80269313 在Ubuntu中,升级了pip,再次使用pip 安装相关的 ...