js 面向对象基本概念

代码
function Man() {
    
// 私有静态属性
    var Sex = "";
    
// 私有静态方法
    function checkSex() {
        
return (Sex == "");
    }
    
// 私有方法
    this._getSex = function() {
        
// 调用私有静态方法
        if(checkSex())
            
return "";
        
else
            
return "";
    }
    
//私有方法
    this.getFirstName = function() { 
        
return "Li";
    };
    
//私有方法
    this.getLastName = function() {
        
return "Ping";
    };
}

//公共方法
Man.prototype.getNickName = function() {
    
return "Leepy";
};

//公共方法
Man.prototype.getFullName = function() {
    
return this.getFirstName() + " " + this.getLastName();
};

//公共方法
Man.prototype.getSex = function() {
    
//调用私有方法
    return this._getSex();
};

//公共静态方法
Man.say = function() {
    
return "Happy new year!";
}

    可以理解为:加了 prototype 就是公共方法,用 function 名直接调用的就是公共静态方法。

    而在 function 内的就是私有静态方法,加了 this 的,就是私有方法。 

原文地址:https://www.cnblogs.com/zlfucku/p/1803316.html