本文目錄一覽:
- 1、jq裡面用this和用$(this)有什麼區別
- 2、Java中this與跟C++的this的區別?
- 3、js中this代表什麼意思?
- 4、JAVA中this()和this.的區別
- 5、js中的this和java中的this有什麼區別?
- 6、請說明javascript的繼承機制和java繼承機制的區別
jq裡面用this和用$(this)有什麼區別
1、表示對象不同:this表示的是javascript提供的當前對象,$(this)表示的是用jquery封裝候的當前對象。
2、過程不同:this對象可以直接用this.style修改樣式,$(this)可以使用jquery提供的方法訪問樣式。
比如this.style.display=”none”在jquery中可以用$(this).css(“display”,”none”)實現。
擴展資料:
$(this)生成的是什麼?
$()生成的是什麼呢?實際上$()=jquery(),就是說返回的是一個jquery的對象。
通常我們為了簡便直接使用$()。實際上,該函數省略了一個參數context。根據選擇器選取匹配的對象即$(selector, context),以jQuery包裝集的形式返回。
context可以是Dom對象集合或jQuery包裝集,傳入則表示要從context中選擇匹配的對象,不傳入則表示範圍為文檔對象(即頁面全部對象),即$(selector)=$(selector,document)。
this指的是,調用函數的那個html對象。
this,表示當前的上下文對象是一個html對象,可以調用html對象所擁有的屬性和方法。
$(this),代表的上下文對象是一個jquery的上下文對象,可以調用jquery的方法和屬性值。
參考資料:百度百科-this關鍵字
Java中this與跟C++的this的區別?
this-是c++里的,this在c++里是個指針,所以要用- .是java里的,java里沒有指針的概念,但是有類似c++指針的句柄的概念 兩者只是在語法上有些不同,性質是一樣的,都是指某個類的一個對象
js中this代表什麼意思?
JavaScript 中的 this 一直是容易讓人誤用的,尤其對於熟悉 Java 的程序員來說,因為 JavaScript 中的 this 與 Java 中的 this 有很大不同。在一個 function 的執行過程中,如果變數的前面加上了 this 作為前綴的話,如this.myVal,對此變數的求值就從 this 所表示的對象開始。this 的值取決於 function 被調用的方式,一共有四種,具體如下:如果一個 function 是一個對象的屬性,該 funtion 被調用的時候,this 的值是這個對象。如果 function 調用的表達式包含句點(.)或是 [],this 的值是句點(.)或是 [] 之前的對象。如myObj.func和myObj[“func”]中,func被調用時的 this 是myObj。如果一個 function 不是作為一個對象的屬性,那麼該 function 被調用的時候,this 的值是全局對象。當一個 function 中包含內部 function 的時候,如果不理解 this 的正確含義,很容易造成錯誤。這是由於內部 function 的 this 值與它外部的 function 的 this 值是不一樣的。代碼清單 5中,在myObj的func中有個內部名為inner的 function,在inner被調用的時候,this 的值是全局對象,因此找不到名為myVal的變數。這個時候通常的解決辦法是將外部 function 的 this 值保存在一個變數中(此處為self),在內部 function 中使用它來查找變數。如果在一個 function 之前使用 new 的話,會創建一個新的對象,該 funtion 也會被調用,而 this 的值是新創建的那個對象。如function User(name) {this.name = name}; var user1 = new User(“Alex”);中,通過調用new User(“Alex”),會創建一個新的對象,以user1來引用,User這個 function 也會被調用,會在user1這個對象中設置名為name的屬性,其值是Alex。可以通過 function 的 apply 和 call 方法來指定它被調用的時候的 this 的值。 apply 和 call 的第一個參數都是要指定的 this 的值,兩者不同的是調用的實際參數在 apply 中是以數組的形式作為第二個參數傳入的,而 call 中除了第一個參數之外的其它參數都是調用的實際參數。如func.apply(anotherObj, [arg1, arg2])中,func調用時候的 this 指的是anotherObj,兩個參數分別是arg1和arg2。同樣的功能用 call 來寫則是func.call(anotherObj, arg1, arg2)。
JAVA中this()和this.的區別
public ClassName(){
System.out.println(“sssssssssssss”);
}
public ClassName(String a){
this();
System.out.println(a);
}
public static void main(String[] args) {
new ClassName(“asdf”);
}
運行結果就是:
sssssssssssss
asdf
this() 就是調用自己的無參構造方法,和super()一個道理。
this就是指本對象自身。
js中的this和java中的this有什麼區別?
所有面相對象編程語言的this都是指向自己的引用,所以用法是一樣的
請說明javascript的繼承機制和java繼承機制的區別
一,先來說說javascript的繼承機制的幾種方式:
1,原型鏈繼承:
優點:從instanceof關鍵字來看,實例既是父類的實例,又是子類的實例,看起來似乎是最純粹的繼承。
缺點:子類區別於父類的屬性和方法,必須在Sub.prototype = new Base();這樣的語句之後分別執行,無法被包裝到Sub這個構造器裡面去。例如:Sub.prototype.name = 「sub」;無法實現多重繼承。
2,構造繼承:
優點:可以實現多重繼承,可以把子類特有的屬性設置放在構造器內部。
缺點:使用instanceof發現,對象不是父類的實例。
3,實例繼承:
優點:是父類的對象,並且使用new構造對象和不使用new構造對象,都可以獲得相同的效果。
缺點:生成的對象實質僅僅是父類的實例,並非子類的對象;不支持多繼承。
4,拷貝繼承:
優點:支持多繼承。
缺點:效率較低;無法獲取父類不可枚舉的方法。
二,java繼承機制:
1,java里的類不能多重繼承,如果一個類一旦繼承了它的父類,那麼它就別想再繼承別的類。一個兒子只能有一個老爸,原本設計是沒錯的。可是在實際應用中,就會出現各種問題。
2,java里有更好的介面,介面從本質上來說可以更好的代替繼承。實現像C++里一樣的宏定義的功能,把你想要的東西都抽象在介面里,讓具體的類去實現這些功能。
三,綜上可以看出java不能多繼承,javascript可以,但是javascript沒有介面這一說話,也有局限性,各有千秋吧。
原創文章,作者:MTVRP,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/129956.html