其他分享
首页 > 其他分享> > [js学习] this 、$(this)

[js学习] this 、$(this)

作者:互联网

1.两者区别

$() = jquery(),即$(this)返回的是一个jQuery对象,能够调用jquery的方法,如click等

this 一般是全局变量,他指向的是函数执行的上下文对象。

比如:现在执行一个函数,该函数的功能为遍历某对象input,且找到该对象的属性。如下:

<div id="mubiao">
    <input type="checkbox" checked="" id="minCmax" disabled > 
    <input type="checkbox"  id="minCost" >
    <input type="checkbox"  id="other" >
</div>
//寻找mubiao  div下复选框为选中状态的input,并遍历查找后的结果
var object=[]
$("#mubiao").find(':checked').each(function() {
              object.push($(this).attr("id"))//添加被选中的input id
              console.log('this:',this)
              console.log('$(this):',$(this))
});

分别打印出this和$(this),结果为:

 这里的this 就是执行函数的对象input,表示当前的上下文对象是一个html DOM对象,可以调用html对象所拥有的属性、方法;而$(this)是套了jQuery方法 的对象,可以调用jquery的方法和属性值。

2.this的多种用法:

(1)在一般函数方法中使用 this 指代全局对象window

 

(2)作为对象方法调用,this 指代上级对象(见  1.区别  的那个栗子)

(3)作为构造函数调用,this 指代new 出的对象

 

 

可以认为,o.x=this.x

标签:jquery,调用,函数,对象,js,学习,指代,input
来源: https://blog.csdn.net/fronde2233/article/details/119913221