zoukankan      html  css  js  c++  java
  • js原生设计模式——2面向对象编程之继承—多继承

    1、单对象克隆

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>singleClone</title>
        <script type="text/javascript">
        var clone = function(target,obj){
            for(var index in obj){
                target[index] = obj[index];
            }
            return target;
        }
        //测试用例
        var book = {
            name:'js设计模式',
            type:'js'
        }
        var subBook = {
            color:'blue'
        }
        clone(subBook,book);
        console.debug(subBook.name);
        console.debug(subBook.color);
        //本例已经通过验证
        </script>
    </head>
    <body>
        
    </body>
    </html>

    2、多对象克隆

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>multipleClone</title>
        <script type="text/javascript">
        function Extend(){
            var _f = function(){};
            for(var i = 0; i < arguments.length; i++){
                for(var index in arguments[i]){
                    _f.prototype[index] = arguments[i][index];
                }
            }
            
            return new _f();
        }
        //测试用例
        var penguin = Extend(
            {
                speed:20,
                swim:function(){
                    console.log('游泳速度'+this.speed);
                }
            },
            {
                run:function(speed){
                    console.log('跑步速度'+speed);
                }
            },
            {
                jump:function(){
                    console.log('跳跃动作');
                }
            }
        );
        console.log(penguin.speed);
        penguin.swim();
        penguin.run(50);
        penguin.jump();
        //本例已经通过验证
        </script>
    </head>
    <body>
        
    </body>
    </html>

  • 相关阅读:
    LFU
    poj 3581 -- 后缀数组
    leetcode 679
    poj 两条线段接雨水
    poj 1696极角排序
    判断平面上是否有一条直线与所有线段相交
    洛谷P3808 【模板】AC自动机(简单版)
    Most Distant Point from the Sea UVA
    P2742 [USACO5.1]圈奶牛Fencing the Cows /【模板】二维凸包
    P2249
  • 原文地址:https://www.cnblogs.com/koleyang/p/4936602.html
Copyright © 2011-2022 走看看