jquery、jquery版本对比、jquery版本差异

jQuery 一共分了 1.x、2.x、3.x 这三个大版本。

jQuery 的版本都是不向后兼容的! jQuery 的版本都是不向后兼容的! jQuery 的版本都是不向后兼容的!重要的事情说三遍哈

一、1.x、2.x、3.x 三大系列的区别

1,IE 的支持情况比较

(1)情况分析

  • 1.x版本:兼容ie678,使用最为广泛的,官方只做bug维护,功能不再新增。因此一般项目来说,使用1.x版本就可以了,最终版本:1.12.4

  • 2.x版本:不兼容ie678,很少人使用,官方只做bug维护,功能不再新增。如果不考虑兼容版本低的浏览器可以使用2.x,最终版本:2.2.4

  • 3.x版本:不兼容ie678,只支持最新的浏览器。除非特殊要求,一般不会使用3.x版本的,很多老的jQuery插件不支持这个版本。目前该版本是官方主要更新维护的版本。截至2018年6月13日,最新版本:3.3.1

 

(2)选择建议

  • 如果需要兼容 ie678:只能选择 1.x
  • 如果不需要兼容 ie678:可以选择 2.x、3.x。因为 1.x 中有大部分代码是对老旧浏览器做的兼容,这个就增加了运行的负担,影响了运行效率。

2,新特性比较

(1)2.x 相较于 1.x 没有增加什么新特性,主要是去除了 ie678 的支持,提升了性能,减小了体检。

(2)3.x 相较于之前版本,增加了许多新特性,也改变一些以往的特性。

 

二、具体版本建议

1,版本历史

版本号发布日期最新更新大小(KB)备注
1.02006年8月26日  第一个稳定版本
1.12007年1月14日   
1.22007年9月10日1.2.654 
1.32009年1月14日1.3.255.9将 Sizzle 选择器引擎引入核心
1.42010年1月14日1.4.476 
1.52011年1月31日1.5.283延迟回调管理,ajax 模块重写
1.62011年5月3日1.6.489显著改善 attr() 与 val() 的性能
1.72011年11月3日1.7.2 (2012年3月21日)92新的事件 API:.on() 和 .off(),而旧的 API 仍然支持。
1.82012年8月9日1.8.3 (2012年11月13日)91.4重写 Sizzle 选择器引擎,改善动画和 $(html, props) 的灵活性。
1.92013年1月15日1.9.1 (2013年2月4日)90移除弃用接口,清理代码
1.102013年5月24日1.10.2 (2013年7月3日)91修复了 1.9 和 2.0 beta 版本周期的 bug 和差异
1.112014年1月24日1.11.3 (2015年4月28日)95.9 
1.122016年1月8日1.12.4 (2016年5月20日)95 
2.02013年4月18日2.0.3 (2013年7月3日)81.1除去对 IE 6-8 的支持以提高性能,并降低文件大小
2.12014年1月24日2.1.4 (2015年4月28日)82.4 
2.22016年1月8日2.2.4 (2016年5月20日)85.6 
3.02016年6月9日3.0.0 (2016年6月9日)86.3Deferred、$.ajax、$.when 支持 Promises/A+,令 .data() 兼容HTML5
3.12016年7月7日3.1.1 (2016年9月23日)86.3加入 jQuery.readyException,ready handler 错误现在不会不显示了
3.22017年3月16日3.2.1 (2017年3月20日)84.6增加了对检索元素内容的支持,弃用了多种旧方法。
3.32018年1月19日3.3.1 (2018年1月20日)84.8弃用旧函数,函数现在可以接受类,并支持其写成数组格式。

 

2,1.x 常用版本

  • 1.4.2:稳定性和兼容性都很出色,插件最多,但性能不如下面后面的几个版本。
  • 1.7.2:性能提升,插件第二多,ajax 和 attr 等 api 有少许修改。
  • 1.8.3:最后一个支持 IE6 的稳定版
  • 1.9.1:开始移除了不少方法,事件绑定推荐使用 on 方法一个代替所有的。
  • 1.12.4:1.x 时代最后一个稳定版本,仅支持 IE8,不支持 IE6/7。

 

3,2.x、3.x 版本

除非有特殊要求(比如面向移动端),一般情况下这两大版本使用人的确很少:

  • 2.x 最后一个稳定版本:2.2.4
  • 3.x 最新版本:3.3.1