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)