面向對象 構造 函數 欄目 JavaScript 简体版
原文   原文鏈接
最簡單的面向對象程序
<script type="text/javascript"> var obj = new Object(); obj.qq = '1079161148'; obj.name = 'mr lan' obj.showName = function() { alert('my name =' + this.name) } obj.showQQ = function() { alert('my qq =' + this.qq) } obj.showName() obj.showQQ() </script>
封裝重複使用的方法;
<script type="text/javascript"> function createPerson(name, qq) {//構造函數 構建出一個對象; var obj = new Object(); obj.qq = qq; obj.name = name obj.showName = function() { alert('my name =' + this.name) } obj.showQQ = function() { alert('my qq =' + this.qq) } //出廠 return obj } var obj = createPerson('Mr Lan','1079161148'); var obj2 = createPerson('Mr Li','1079161168'); obj.showName(); obj.showQQ(); </script>
//升級------->構造函數調用加new
<script type="text/javascript"> function createPerson(name, qq) { //構造函數 構建出一個對象; this.qq = qq; this.name = name this.showName = function() { alert('my name =' + this.name) } this.showQQ = function() { alert('my qq =' + this.qq) } } var obj = new createPerson('Mr Lan', '1079161148'); var obj2 = new createPerson('Mr Li', '1079161168'); obj.showName() obj.showQQ()
  alert(obj.showName()==obj2.showName()) //false
</script>
//進階面向對象編程
<script type="text/javascript"> //混合構造函數混合方式(構造函數配合原型) function createPerson(name, qq) { //構造函數加屬性 this.qq = qq; this.name = name } createPerson.prototype.showName = function(){//原型加方法 alert('my name =' + this.name) } createPerson.prototype.showQQ = function(){ alert('my qq =' + this.qq) } var obj = new createPerson('Mr Lan', '1079161148'); var obj2 = new createPerson('Mr Li', '1079161168'); //obj.showName() //還能夠繼續用不影響使用 //obj.showQQ() alert(obj.showName()==obj2.showName())//true </script>
相關文章
相關標籤/搜索
每日一句
    每一个你不满意的现在,都有一个你没有努力的曾经。
本站公眾號
   歡迎關注本站公眾號,獲取更多信息