简单模拟javaScript面向对象
<html>
<head>
<script type="text/javascript">
if (!Object.create) {
Object.create = function (o) {
function F() {}
F.prototype = o;
return new F();
};
}
function alertt(){
ca = new cat();
alert(ca.name);
dog1=Object.create(Dog);
dog1.shout();
pig=Pig.createNew();
pig.shout();
spig = SmallPig.createNew();
spig.shout();
}
//方法一
Pig = {
job:"eat";//全局静态变量,可被多个对象共享
createNew: function(){
var pig = {};
sound = "herher";//直接定义是私有
pig.name = "BigPig";
pig.shout = function(){ alert(sound); };
return pig;
}
};
//继承
SmallPig = {
createNew: function(){
var pig = Pig.createNew();
pig.name = "SmallPig";
pig.shout = function(){ alert("wuher wuher"); };
return pig;
}
}
//方法二
Dog={
shout:function(){alert("wangwang");}
}
//方法三
function cat(){
this.name = "miaomiao";
}
</script>
</head>
<body>
<button id="b01" type="button" onclick="alertt()">动物叫</button>
</body>
</html>
最新文章
- mark
- MyEclispe 2016 CI 0发布(附下载)
- uva 10976 fractions again(水题)——yhx
- HDU3987 Harry Potter and the Forbidden Forest(边数最少的最小割)
- 让git忽略文件模式的改变
- AppCan4.0:开发者要做有价值的APP
- PowerDesigner(二)-项目和框架矩阵(转)
- WPF 一个弧形手势提示动画
- c语言中的制表符\t与空格
- Android 布局之LinearLayout 子控件weight权重的作用详析(转)
- mac jmeter 的使用
- PAT1028. List Sorting (25)---strcmp
- 【PHP】Sublime下PHP网站开发指南
- Java Build Path(Java 构建路径)
- Linux之批量挂载硬盘
- CentOS在线安装RabbitMQ3.7
- CentOS6.8手动安装MySQL5.6
- Scrapy的【SitemapSpider】的【官网示例】没有name属性
- Android-SDCardUtil-工具类
- P1107 [BJWC2008]雷涛的小猫