jQuery缓存元素,$ variable和variable之间的区别?

Cra*_*esk 3 variables jquery caching

我想知道是否有人可以解释JQuery中缓存元素的差异.一个有美元符号,一个没有.

这是一个例子:

var cached = $('.someElement'); 

var $cached = $('.someElement'); 
Run Code Online (Sandbox Code Playgroud)

Kon*_*rak 15

没有什么区别.两者都被缓存,只有变量的名称不同.

这两个cached$cached是有效的JavaScript变量:

var $message = 'Hello';
var message = 'Hello';
Run Code Online (Sandbox Code Playgroud)

$ variable语法通常用于表示变量包含jQuery对象,而不是另一种类型(字符串,整数,DOM元素......).这是一种匈牙利符号,但它只是程序员之间的惯例.没有任何Javascript或jQuery强加.

当人们谈论缓存jQuery变量时,他们意味着只进行一次查找:

//Like this: cached: search is done once.
var clientSpan = $('#client');
clientSpan.hide();
clientSpan.show();
// ...

//Not like this: uncached
$('#client').hide();
$('#client').show();
// ...
Run Code Online (Sandbox Code Playgroud)