天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

javascript 面向對象,實現(xiàn)namespace,class,繼承,重載

由于組里項目大多的Javascript,css等客戶端工作是另一同事在負責,該同事又特忙無法重構,老大也就只是提建議并未立即實施重構。但是我前些日子也改過些許客戶端的小bug,確實那代碼看得讓人有些云里霧里,不知身在哪山,輕易不敢動代碼,于是就自己動手鼓搗起我曾又愛又恨的Javascript來,自己寫一個簡單的js實現(xiàn)namespace,繼承,重載等面向對象的特性.歡迎拍磚灌水
.定義namespace
Namesapce.js
復制代碼 代碼如下:
Namespace = new Object();
Namespace.register = function(fullname){
try
{
var nsArray = fullname.split(".");
var strNS = "";
var strEval = "";
for(var i=0;i<nsArray.length;i++){
if(strNS.length >0)
strNS += ".";
strNS += nsArray[i];
strEval += " if(typeof("+ strNS +") =='undefined') " + strNS + " = new Object(); ";
}
if(strEval != "") eval(strEval);
}catch(e){alert(e.message);}
}

.Employee.js
Employee.js
復制代碼 代碼如下:
//注冊命名空間
Namespace.register("MyCompany");
//1.類:雇員
MyCompany.Employee = function(empName){
this.Name = empName;
this.Salary = 1000;
this.Position = "cleaner";
}
MyCompany.Employee.prototype.ShowName = function(){
return "I'm "+this.Name+",my salary is $" + this.Salary;
}
MyCompany.Employee.prototype.Work = function(){
return "I'm a "+ this.Position +",I'm cleaning all day!"
}
//2.類:程序員
MyCompany.Developer = function(empName){
//繼承父類屬性
MyCompany.Employee.call(this,empName);
//覆蓋父類屬性
this.Position = "developer";
//擴展屬性
this.Technology = "C#";
}
//繼承父類原型方法
MyCompany.Developer.prototype = new MyCompany.Employee();
//覆蓋父類方法
MyCompany.Developer.prototype.Work = function(){
return "I'm a "+ this.Position +",i'm good at "+ this.Technology +",i'm coding all day!"
}

測試代碼
復制代碼 代碼如下:
<html>
<title>Javascript 面向對象的實現(xiàn) namespace,class,繼承,重載</title>
<head>
<script language="Javascript" src="namespace.js" type="text/Javascript"></script>
<script language="Javascript" src="employee.js" type="text/Javascript"></script>
<script language="Javascript" type="text/Javascript">
    function showEmployee(){                
        var emp = new MyCompany.Employee("xiaoming");
        showInfo(emp);
    }
    function showDeveloper(){
        var emp = new MyCompany.Developer("Gates");
        showInfo(emp);
    }    
    function showInfo(emp){
        alert(emp.ShowName());
        alert(emp.Work());
    }
</script>
</head>
<body>
<input type="button" value="show employee info" onclick="showEmployee();"/><br/><br/>
<input type="button" value="show developer info" onclick="showDeveloper();"/>
</body>
</html>

源代碼打包下載

JavaScript技術javascript 面向對象,實現(xiàn)namespace,class,繼承,重載,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产精品香蕉视频在线 | 中文字幕乱偷无码AV蜜桃 | 色AV色婷婷97人妻久久久 | 亚洲国产精品嫩草影院永久 | 印度学生xxxxx性14一16 | 2021年国产精品久久 | 少妇伦子伦精品无码 | 国产互换后人妻的疯狂VIDEO | DASD-700美谷朱里 | 美女诱点第6季 | 国产精品99久久久久久人韩国 | 国产全肉乱妇杂乱视频 | 新影音先锋男人色资源网 | 国产成人高清在线观看播放 | 亚洲综合香蕉在线视频 | 97资源站超碰在线视频 | 人与禽交3d动漫羞羞动漫 | 欧美成人免费一区二区三区不卡 | 国产野外无码理论片在线观看 | 在教室伦流澡到高潮HNP视频 | 小学生偷拍妈妈视频遭性教育 | 久久亚洲精品成人综合 | 国产精品久久久久一区二区三区 | 2022精品福利在线小视频 | 最懂男人心论坛 | 日韩亚洲欧美中文高清 | 大陆老熟女60岁 | 99re8热视频这在线视频 | 国产69精品久久久久观看软件 | 在线免费看a | 日本高清天码一区在线播放 | 99RE6国产精品视频播放 | 桥本有菜黑丝 | 午夜毛片在线观看 | 最近中文字幕免费高清MV视频6 | 色色色五的天 | 国产精品嫩草影院在线观看免费 | 国内精品自产拍在线少密芽 | 夜夜女人国产香蕉久久精品 | 美女视频黄a视频全免费网站色窝 | 一本之道高清www在线观看 |