以下是完整版的物件導向功能:
(function(){
var name = "";
var printName = function(name){
this.name = name; //public
console.log(this.name);
};
printName("Eric");
var displayName = function(enterName){
var name = enterName; //private
console.log(name);
};
displayName("Eric");
})();
上面有實作一個公開的 NAME 和一個在 function 定義的 name,這就類似於public , private 概念, 正統會這樣寫:
(function(){
var printName = function(name){
this.name = name; //public
console.log(this.name);
};
printName("Eric");
var displayName = function(enterName){
var name = enterName;
console.log(name);
};
displayName("Eric");
})();
會發現移除了 var name = ""; 這個宣告, 但由於javscript 不宣告 var 就會直接變成 global 的變數,因此就直接使用 this.name就好了!
沒有留言:
張貼留言