程序中面向對象的思想相信所有的程序員都不會陌生,JavaScript程序中同樣有對象這一說法。可能很多初學者分不清。下面蘇州網站制作的小編帶領大家一起來理一理。
javascript中對象(xiang)的屬性(xing)和方法私(si)有性(xing)都(dou)是利用(yong)函數可以(yi)提供局部(bu)作用(yong)域的特性(xing)來(lai)實現的。
var Obj={};//聲明一個對象;
(function(){
var name="這是私有屬性";//此為函數局部變量;
var i=0;
function index(){return i+=1;}
function getName(){return name;}//外部訪問私有屬性接口
Obj={
Id:index,
getN:getName,
getName:getName
}
}())//執行返回私有屬性值;
Obj.getN();//輸出"這是私有屬性"
Obj.Id()輸出1
上面的index和getName就是對象的私有屬性外部不能調用和修改
Obj.getN=unll;
Obj.getN();//Obj.getN is not a function;
Obj.getName();//輸出"這是私有屬性"
上面的代碼演示了私有方法并沒有被修改。
其實現在用的比較多的是jQuery。jQuery對象,就是通過jQuery包裝DOM對象后產生的對象,舉個最簡單的例子:
$("#test").html() 意思是指:獲取ID為test的元素內的html代碼。其中html()是jQuery里的方法
這段代碼等同于用DOM實現代碼:
document.getElementById("id").innerHTML;
雖然jQuery對象是包裝DOM對象后產生的,但是jQuery無法使用DOM對象的任何方法,同理DOM對象也不能使用jQuery里的方法.亂使用會報錯。比如:$("#test").innerHTML、document.getElementById("id").html()之類的寫法都是錯誤的。
需要注意的是, jQuery 對象和 DOM 對象可以任意的相互轉換,但是 DOM 對象能使用DOM 中的方法,jQuery 對象是不可以使用DOM中的方法。網上有(you)很多Dom對象和jQuery對象相互轉化的(de)實(shi)(shi)例,需要了解更多的(de)小伙伴可(ke)以(yi)自行搜(sou)索(suo)(suo)。蘇州網站建設(she)小編在(zai)此就(jiu)不(bu)在(zai)贅述。沒有(you)實(shi)(shi)踐(jian)就(jiu)沒有(you)發(fa)言權。希望大(da)家可(ke)以(yi)養成好探索(suo)(suo),勤練習的(de)好習慣。