- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
JS面向对象经典案例
//一、通用创建函数
function New(aClass,aParams){
//定义临时的中转函数壳
function new_() {
// 调用原型中定义的构造函数,中转构造逻辑及构造参数,用Create方法,来替代原有的构造函数
aClass.Create.apply(this,aParams);
};
new_.prototype=aClass;
return new new_();
};
// Person
var Person = {
// 模拟Object.create()方法,初始化
Create:function(name,age) {
=name;
this.age=age;
return this;
},
sayHello: function() {
alert(my name is + + ,my age is + this.age);
}
}
window.onload = function() {
var obj = New(Person, [luolibing, 26]);
obj.sayHello();
// IE9及以上 GOOGLE FIREFOX支持,IE8及IE8以下不支持,跟上面的方法类似
// getPrototypeOf获取Object的原型,IE版本要求高IE9以上
var o = Object.create(Person).Create(liuxiaoling, 27);
o.sayHello();
}
function person(name){
=name;
};
// 二、原型链级,子类需要一个原型指向父类,传递起来比较麻烦
totype.sayHello=function(){
alert(Hello,Im +);
};
// employee
function employee(name,money){
person.call(name);
this.money=money;
};
// 子类原型指向父类Person
totype=new person();
// 子类原型添加showMoney方法
totype.showMoney=function(){
alert(+this.money);
};
var em=new employee(bob,11);
em.showMoney();
em.sayHello();
var pp=new person(jack);
pp.sayHello();
//alert(pp.sayHello==em.sayHello);
Stotype.toString()=function(){
};
var aaa=bb;
aaa.toString();
Stotype.isDate=function(){
var reg=/^[0-9]*$/;return reg.test(this);
};
alert(11231.isDate());
alert(2005-11-11.isDate());
function Person(name){
;
};
Ppany=MS;
//原型的方法
Ptotype.SayHello = function() {
alert(Hello, Im + + of + pany);
};
var BillGates = new Person(Bill Gates);
BillGates.SayHello(); //由于继承了原型的东西,规规矩矩输出:Hello, Im Bill Gates
var SteveJobs = new Person(Steve Jobs);
SteveJpany = Apple; //设置自己的company属性,掩盖了原型的company属性
//实现了自己的SayHello方法,掩盖了原型的SayHello方法
SteveJobs.SayHello = function() {
alert(Hi, + + like + pany + , ha ha ha );
};
SteveJobs.SayHello(); //都是自己覆盖的属性和方法,输出:Hi, Steve Jobs like Apple, ha ha ha BillG
您可能关注的文档
- java常用的几种集合.doc
- java序列化存储读取文件.doc
- java开发中的特殊字符.doc
- Java异常总结runtimeExceptiong.docx
- Java当中对Date类的处理.docx
- java彻底理解bytecharshortintfloatlongdouble.doc
- JAVA抛出异常的实验.doc
- Java接收从键盘输入.doc
- JAVA数据库取数据万用方法.doc
- java数据结构知识点集合.doc
- 吉安县公开招聘专职文明实践员笔试备考试题及答案解析.docx
- 2025重庆枫叶国际学校招聘教师笔试备考试题及答案解析.docx
- 游机队电玩自制联网教程-tplink.pdf
- 2025重庆新华出版集团招聘1人笔试模拟试题及答案解析.docx
- 2025宜宾高新丽雅城市产业发展有限公司公开招聘笔试模拟试题及答案解析.docx
- 2025云南保山市龙陵县勐糯镇人民政府招聘合同制专职消防员1人笔试模拟试题及答案解析.docx
- 11.1生活中常见的盐 九年级化学人教版下册.pptx
- 6.1法律保护下的婚姻 高二政治《法律与生活》课件(统编版选择性必修2)(新版).pptx
- 文昌市中小学教师校园招聘29人笔试模拟试题及答案解析.docx
- 10.1.5 常见的酸和碱(第5课时)课件-九年级化学人教版下册.pptx
文档评论(0)