jQuery – 不同版本的差异對比

  • A+
所属分类:Web前端
摘要

jQuery 一共分了 1.x、2.x、3.x 这三个大版本。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.0 2006年8月26日     第一个稳定版本
1.1 2007年1月14日      
1.2 2007年9月10日 1.2.6 54  
1.3 2009年1月14日 1.3.2 55.9 将 Sizzle 选择器引擎引入核心
1.4 2010年1月14日 1.4.4 76  
1.5 2011年1月31日 1.5.2 83 延迟回调管理,ajax 模块重写
1.6 2011年5月3日 1.6.4 89 显著改善 attr() 与 val() 的性能
1.7 2011年11月3日 1.7.2 (2012年3月21日) 92 新的事件 API:.on() 和 .off(),而旧的 API 仍然支持。
1.8 2012年8月9日 1.8.3 (2012年11月13日) 91.4 重写 Sizzle 选择器引擎,改善动画和 $(html, props) 的灵活性。
1.9 2013年1月15日 1.9.1 (2013年2月4日) 90 移除弃用接口,清理代码
1.10 2013年5月24日 1.10.2 (2013年7月3日) 91 修复了 1.9 和 2.0 beta 版本周期的 bug 和差异
1.11 2014年1月24日 1.11.3 (2015年4月28日) 95.9  
1.12 2016年1月8日 1.12.4 (2016年5月20日) 95  
2.0 2013年4月18日 2.0.3 (2013年7月3日) 81.1 除去对 IE 6-8 的支持以提高性能,并降低文件大小
2.1 2014年1月24日 2.1.4 (2015年4月28日) 82.4  
2.2 2016年1月8日 2.2.4 (2016年5月20日) 85.6  
3.0 2016年6月9日 3.0.0 (2016年6月9日) 86.3 Deferred、$.ajax、$.when 支持 Promises/A+,令 .data() 兼容HTML5
3.1 2016年7月7日 3.1.1 (2016年9月23日) 86.3 加入 jQuery.readyException,ready handler 错误现在不会不显示了
3.2 2017年3月16日 3.2.1 (2017年3月20日) 84.6 增加了对检索<template>元素内容的支持,弃用了多种旧方法。
3.3 2018年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