原型模式 -- JavaScript语言的灵魂
2024-09-07 02:00:11
原型模式就是将原型对象指向创建对象的类,使这些类共享原型对象的方法与属性。JS是基于原型链实现对象之间的继承,是对属性或者方法的共享,而不是对属性和方法的复制。
// 图片轮播类
var LoopImages = function (imgArr, container) {
this.imagesArray = imgArr;
this.container = container;
}
LoopImages.prototype = {
// 创建轮播图片
createImage:function () {
console.log('LoopImages createImage function');
},
// 切换下一张图片
changeImage:function () {
console.log('LoopImages changeImage function');
}
}
// 上下滑动切换类
var SlideLoopImg = function (imgArr, container) {
// 构造函数继承图片轮播类
LoopImages.call(this,imgArr,container);
}
SlideLoopImg.prototype = new LoopImages();
// 重写继承的切换下一张图片方法
SlideLoopImg.prototype.changeImage = function () {
console.log('SlideLoopImg changeImage function')
}
// 渐隐切换类
var FadeLoopImg = function (imgArr, container,arrow) {
// 构造函数继承图片轮播类
LoopImages.call(this,imgArr,container);
// 切换箭头私有变量
this.arrow = arrow;
}
FadeLoopImg.prototype = new LoopImages();
FadeLoopImg.prototype.changeImage = function () {
console.log('FadeLoopImg changeImage function')
}
// 测试用例
console.log(fageImg.container); //slide
fadeImg.changeImg(); //FadeLoopImg changeImage function
最新文章
- [Android]Android MVP&;依赖注入&;单元测试
- Lind.DDD.Repositories.EF层介绍
- Resources in Visual Tracking(转载)
- 如何去掉delphi2010的欢迎界面(welcome page)
- Oracle PLSQL语句实例
- DataTable分组归类
- HDU 5876 Sparse Graph
- 【转】win7 虚拟机virtualbox中ubuntu12.04安装samba实现文件共享
- 给分类(Category)添加属性
- pagination jquery最简单的分页【无刷新和刷新都通用】
- mysql 使用记号
- Cookie 操作工具类
- C# 6 与 .NET Core 1.0 高级编程 - 41 ASP.NET MVC(下)
- Struts2之i18N国际化
- Error:No such property: GROUP for class: org.gradle.api.publication.maven.internal.deployer.DefaultGroovyMavenDeployer
- JavaNIO缓冲区
- python中的if __name__=='__main__': main()解析
- 【mysql】phpMyadmin上传文件限制
- hadoop入门级总结一:HDFS
- 深入理解LInux内核-进程通信