Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/407.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 何时使用$,何时不使用$_Javascript_Jquery - Fatal编程技术网

Javascript 何时使用$,何时不使用$

Javascript 何时使用$,何时不使用$,javascript,jquery,Javascript,Jquery,我使用以下变量选择了一个控件 var txt = $("#text1"); 现在,当我必须处理文本框上的事件时,我是否必须将其引用为$(txt)或txt $(txt).keydown(function() {}) 或 优势是什么。请以变量txt作为上下文进行解释。如果txt已经等于jquery对象,则无需使用$(txt),因为返回相同内容只是额外的处理。最好的方法是声明变量,以便知道它们是什么。基本上,我要说的是应用一些jQuery变量,并在它们前面加上$ var $text1 = $("#

我使用以下变量选择了一个控件

var txt = $("#text1");
现在,当我必须处理文本框上的事件时,我是否必须将其引用为$(txt)或txt

$(txt).keydown(function() {})


优势是什么。请以变量txt作为上下文进行解释。

如果txt已经等于jquery对象,则无需使用$(txt),因为返回相同内容只是额外的处理。

最好的方法是声明变量,以便知道它们是什么。基本上,我要说的是应用一些jQuery变量,并在它们前面加上$

var $text1 = $("#text1");  // this is a jQuery object
var text1 = $text1[0];     // this is not

关于查德回应的更多信息

$()
是通往常用函数的捷径
document.getElementById()


查找并存储对象的值后,无需再次查找。正如乍得提到的那样。自问变量是对象还是名称(字符串),如果是名称,则必须查找对象。

根据我的经验,我发现使用$(txt)比将其指定为引用以及使用引用调用相同的方法/属性产生更可预测的结果。就我而言,这可能是一种迷信,但是我们中的一些人在工作中遇到了麻烦,在分配了txt之后,使用了诸如txt的引用而不是隐式的$(txt)。

如果框架要求您必须发展这样的实践,这是非常令人不安的。@Rakesh-首先,没有人暗示这是必需的。其次,我怀疑您从未使用过大量jQuery,否则您就会知道这个简单约定有多么有用。请记住,应用程序匈牙利语是一种很好的匈牙利符号。你错了。从OP的示例代码可以清楚地看出,他使用的是jQuery,在这种情况下,
$(…)
是jQuery的“美元函数”:
var $text1 = $("#text1");  // this is a jQuery object
var text1 = $text1[0];     // this is not