Javascript “与”的区别是什么$(本)";及;这是什么;?

Javascript “与”的区别是什么$(本)";及;这是什么;?,javascript,jquery,Javascript,Jquery,我在看报纸。在这两个代码段中使用this,会产生混淆 $(document).ready(function() { $("#orderedlist").find("li").each(function(i) { $(this).append( " BAM! " + i ); }); }); $(document).ready(function() { // use this to reset several

我在看报纸。在这两个代码段中使用
this
,会产生混淆

     $(document).ready(function() {
        $("#orderedlist").find("li").each(function(i) {
        $(this).append( " BAM! " + i );
       });
     });

    $(document).ready(function() {
      // use this to reset several forms at once
       $("#reset").click(function() {
        $("form").each(function() {
         this.reset();
        });
     });
   });

我们什么时候需要
$(this)
this
?它们之间有什么区别?提前感谢。

这本身就是一个常规对象


$(this)
接受
this
并添加jQuery包装器,以便可以对对象使用jQuery方法。

this
引用DOM对象。因此,
reset()
是表单DOM对象的函数<另一方面,code>append()
是一个jQuery方法,因此它必须由jQuery对象调用,因此,
$(this)


当你用
$
包围
这个
时,你会得到一个表示该DOM对象的jQuery对象。

通常在jQuery中,
这个
将是有问题的DOM元素的一个实例,
$(this)
围绕
这个
构建一个jQuery对象,它提供了像
each()
val()

引用DOM元素本身<代码>$(this)
将元素包装到jQuery对象中

在第一个示例中,您需要
$(this)
,因为
.append()
是一个jQuery方法

在第二个示例中,
reset()
是一个JavaScript方法,因此不需要jQuery包装器。

如果在同一行代码上使用jQuery函数跟踪它,则只需要$(this)

ex: $(this).find(...);    $(this).val();   etc

或者你只需要
这个

可能重复的@patrick:我不认为它是重复的。值得回答的是,为什么在这个特定代码的一部分中需要
$(这个)
,而在另一部分中需要
这个
。@mblase75:嗯,我想我不同意。这个答案,再加上教程已经解释过的内容,使它成为一个重复。阅读另一个问题的答案可以解决这个问题。在教程中:“请注意,在
.each()
函数中,
这个
指的是实际的元素。”…或者,如果您不喜欢重复的,这里有一个引用同一教程中相同代码的函数:非常感谢您的快速响应@帕特里克,别紧张,伙计。我正在努力学习,人们正在帮助我。你可能在某个时候处于那个阶段。