Javascript 中函數各成員總結

Javascript 中函數各成員總結app

//私有和特權成員在函數的內部,它們會被帶到函數的每一個實例中
//公有的原型成員是對象藍圖的一部分,適用於經過new關鍵字實例化的該對象的每一個實例
//靜態成員只適用於對象的一個特殊實例

function myConstructor(message){
	//公有屬性,實例可訪問的屬性
	this.myMessage = message;

	//私有屬性 (用var命名)
	var separator = '-';
	var myOwner = this;

	//私有方法
	function alertMessage(){
		//alert(this.myMessage)  
		//this指由alertMessage函數建立實例
		//因此這裏要用myOwner,指向由myConstructor建立的實例
		alert(myOwner.myMessage);
	}
	alertMessage();

	//特權方法(也是公有方法,能夠訪問私有屬性和方法)
	this.appendToMessage = function(string){
		this.myMessage += separator + string;
		alertMessage();
	}

	//公有方法,實例可訪問的方法
	myConstructor.prototype.clearMessage = function(){
		this.myMessage = '';
	}

	//靜態屬性 (實例不可訪問)
	myConstructor.name = 'Jeff';

	//靜態方法 (實例不可訪問)
	myConstructor.alertName = function(){
		//這裏的this指的是myConstructor自己
		alert(this.name);
	}
}
相關文章
相關標籤/搜索