jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers. With a combination of versatility and extensibility, jQuery has changed the way that millions of people write JavaScript.
题主问这个问题说明题主比较善于思考的,有好奇心,点个赞。
我根据个人理解,提供一些见解(抛砖引玉下):
1、首先这里的jquery就是jquery.js的化名而已,不做详解。
2、但这里的jQuery就不一样了,首先,为什么要写成
jQuery
?而不是Jquery
,也不是jquEry
,根据个人推测,这里的jQuery,用的是驼峰命名法,是javaScript表示函数名的一种写法,其中j
可能是指javascript
或jquery之父john resig
的首个字母,后面的query意即查询的意思。这里说jQuery是jquery源码中函数命名,打开jquery源码来佐证一二。在上面这段单独拿出来的jquery源码中,我们可以看到作者用
var jQuery = function(){}
的形式声明了一个函数表达式(在jquery源码中,jQuery
是jquery的核心类,这里不做过多解释,可以看jquery源码分析的相关文章)。所以在这里佐证了关于jQuery
是jquery中函数命名的猜想。说了为什么写成jQuery
,再聊一下为什么要写jQuery
,在这段代码window.jQuery = window.$ = jQuery;
中,可以看到,我们用外部全局变量window
将jQuery
附加到其上做为属性,意思是指把jQuery声明成一个全局变量,因为在JavaScript中,自定义的全局变量都是window的属性,这里同时把jQuery
和$
提升为全局变量,是因为在JavaScript中为了避免用$
出现了全局污染,因为有很多JavaScript库也会把$
作为简写,当用$
全局变量出现变量冲突时,可以用jQuery
代替$
,比如$('.p').addClass()
可以写成jQuery('.p').addClass()
。参考资料:
jquery百度百科
驼峰命名法百度百科
jquery源码分析
npm里面jquery和jQuery是不一样的 说的是这个吧?
jQuery是node.js用的https://www.npmjs.com/package...
jquery是浏览器用的https://www.npmjs.com/package...
不用切换大小写
你问的可能是jQuery UI 与 jquery 的区别吧.
主要区别是:
(1) jQuery是一个js库,主要提供的功能是选择器,属性修改和事件绑定等等。
(2) jQuery UI则是在jQuery的基础上,利用jQuery的扩展性,设计的插件。提供了一些常用的界面元素,诸如对话框、拖动行为、改变大小行为等等。
(3) jQuery本身注重于后台,没有漂亮的界面,而jQuery UI则补充了前者的不足,他提供了华丽的展示界面,使人更容易接受。既有强大的后台,又有华丽的前台。jQuery UI是jQuery插件,只不过专指由jQuery官方维护的UI方向的插件。
楼主也许想知道的是
jquery指的是js库本身,就是常常看到的那个js文件,引入的文件。
jQuery指的是jquery里面的函数,也就是经常我们用jquery的时候用的那个$
因为再可能导致冲突的情况下,我们用jQuery来替代‘$’这个符号。
jQuery官网
其实他两之间最大的区别就是,有一个第二个字母大写了。。。。。。。。。。。。
难道是说这里: jQuery 2.0.3源码
Query是node.js用的https://www.npmjs.com/package...
jquery是浏览器用的https://www.npmjs.com/package...
JS里函数名区分大小写,跟PHP不同,所以在编程时只能写作
jQuery
,$
是jQuery
的别名,你也可以自定义,比如你很爱PHP的话,可以用php作为jQuery的别名: