zoukankan      html  css  js  c++  java
  • 原型模式 -- JavaScript语言的灵魂

    原型模式就是将原型对象指向创建对象的类,使这些类共享原型对象的方法与属性。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
  • 相关阅读:
    基于MongoDB.Driver的扩展
    通用查询设计思想
    API接口通讯参数规范
    lambda简单记录
    list去重精简代码版
    spring boot file上传
    fastjson过滤器简单记录
    java读取properties文件
    list循环删除单个元素
    MapReduce运行流程分析
  • 原文地址:https://www.cnblogs.com/wujiaqi/p/10372140.html
Copyright © 2011-2022 走看看