Jquery是一个运行在javascript上的包装器。尽管Jquery使用javascript大语法,但它提供了易于使用的小语法。
如果用javascript声明函数,则不能在名称中使用'$'字符,那么jquery是如何做到这一点的呢?例如:
function myFunction() {
$("#h01").html("Hello jQuery")
}
$(document).ready(myFunction);
但是如果我这样声明一个函数:
function $(a){
// do something
}
javascript显示错误?
根据规范,https://es5.github.io/#x7.6
IdentifierStart ::
UnicodeLetter
$
_
UnicodeEscapeSequence
$
可以作为名称中的字符。
演示,使用问题中的代码:http://jsfiddle.net/q02go7dd/
尝试
var $ = function(){
// do something
};
而且你不会出错。
$是JQuery对象本身的一个简单别名。
所以当你打字时,
$("#h01").html("Hello jQuery");
您正在使用参数"h01"调用JQuery构造函数。
这就像声明一个名为dave的函数,并给它一个别名ß,然后这样调用它。
dave("h01");
$很好:
$myFunction = function(){ alert("hello"); }
$myFunction(); // alerts "hello"
在Jquery$符号中返回Jquery对象。