jquery里的$怎么来的

在学习jQuery时,我们经常会用到一个神奇的符号$(美元符号)。那么这个符号究竟是从何而来的呢?

var $ = function(selector) {return document.querySelector(selector);}

事实上,在jQuery中,$是一个全局函数,它是对于jQuery()的简写。这个全局函数接受一个CSS选择器或者HTML代码,然后返回与该选择器匹配的元素或者新创建的元素。

jQuery的创始人John Resig先生在他的博客上曾经分享过一个有趣的故事。在2005年的某一天,他在厕所里想到了这个符号,于是便在旁边的纸巾上写下了这个代码:

$ = function(arg) { return document.getElementById(arg); };

他将这段代码贴到了页面顶部的<script>标签中,然后随意输入一个$id的值(比如"foo"),按下Enter,页面顿时出现了"Uncaught TypeError: Cannot set property $ of undefined"的错误提示,而console.log($)的结果也非常令人激动——"function (arg) { return document.getElementById(arg); }"。

这时,John Resig先生第一个想到的不是删除这个错误的代码,而是将其作为jQuery的键。因为这样做可以方便地将代码压缩在一个字符中,而且更重要的是,美元符号在大多数语言中都有着“取值”的意义,因此很容易被记忆。

于是,$在jQuery中成了选中元素的关键字符,集智慧与方便于一身。

jquery里的$怎么来的