在看到jQuery的相關資料時看到一個例子,其中主要有分出 this$(this)二個部份,上線爬一下文也大約了解了一下。

$(this)生成的是什麼
$()生成的是什麼呢?實際上$()=jquery(),那麼也就是說返回的是一個jquery的對象。

那麼依照,$()返回的是jquery對象這一結論,可以得出$(this)得到的是一個jquery對象.使用萬能的alert()方法會出現[object Object]的字串。出來的是一個 object,該object自然是jquery的對象。也即是說我們用通過$(‘指定對象元素’)來調用jquery的方法和屬性等。

this代表什麼?
this表示上下文所處的這個對象,這個對象到底是個什麼對象呢?加入js裡面也有getType的話返回的值會是什麼呢

本質就是JavaScript與jQuery對象的轉換
this 是 JavaScript 中的關鍵字。 $(this) 可以認為是用 jQuery 包裝過 JavaScript 中的 this,包裝後 $(this) 就會繼承 jQuery 的方法。
$(this)是jquery對象,能調用jquery的方法,例如click(), keyup()。
而this,則是html元素對象,能調用元素屬性,例如this.id,this.value。
例如假設已經使得this和$(this)都指向了input對象了,若要獲得input的值,可以this.value,但$(this)就得$(this).val()。


See the Pen jqeury – .siblings() & $(this.id) by Jimmy_Wu (@Jimmy_Wu) on CodePen.


資料來源

jquery的this和$(this)區別分析
大家知道 jquery裡面$(this) 和 this 的區別 是什麼????
jQuery裡$(this)和this的區別在哪?
jQuery使用之(一)標記元素屬性