程序中面向對象的思想相信所有的程序員都不會陌生,JavaScript程序中同樣有對象這一說法。可能很多初學者分不清。下面蘇州網站制作的小編帶領大家一起來理一理。
javascript中對象的屬性和方法私有性都是利用函數可以提供局部作用域的特性來實現的。
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中的方法。網上有很多Dom對象和jQuery對象相互轉化的實例,需要了解更多的小伙伴可以自行搜索。蘇州網站建設小編在此就不在贅述。沒有實踐就沒有發言權。希望大家可以養成好探索,勤練習的好習慣。