美文网首页
面向对象的程序设计

面向对象的程序设计

作者: 令武 | 来源:发表于2018-03-22 22:22 被阅读0次

第一种

这种方式有非常大的弊端,就是每次都要新建一个对象,然后添加属性、方法,会产生大量重复代码。

var group = new Object();

    group.arr = [11,23,22,13,45,23,43,10];

    group.sums = function(){

      var sum = 0;

      var x;

    //  for(var i = 0; i < group.arr.length; i++){

    //      sum += group.arr[i]

    //  }

      for(x in group.arr){

          sum += group.arr[x]

      }

      console.log('普通函数',sum) 

    }

    group.sums()

第二种:工厂模式

工厂模式,外部创建一个函数,里面创建一个对象。记得return 对象。

function createGroup(muster){

      var o = new Object()

      o.muster = muster;

      o.createSum = function(){

        var sum = 0;

        var x; 

        for(x in this.muster){

          sum += this.muster[x]

        }

        console.log('工厂模式',sum);

      }

      return o;  // 记得return o

    }

    arr = [11,23,22,13,45,23,43,10];

    var group1 = createGroup(arr);

    group1.createSum()

第三种:构造函数模式

构造函数模式,外部创建一个函数,里面以this的形式。调用记得加new

function createGroup2(muster2){

      this.muster2 = muster2;

      this.createSum2 = function(){

        var sum = 0;

        var x;

        for(x in this.muster2){

            sum += this.muster2[x];

        }

        console.log('构造函数模式',sum);

      }

    }

    arr2 = [11,23,22,13,45,23,43,10];

    var group2 = new createGroup2(arr2);

    group2.createSum2()

第四种:原型模式

function createGroup3(muster3){

      this.muster3 = muster3;

    }           

    createGroup3.prototype.sum = function(){

            var sum = 0;

            var x;

            for(x in this.muster3){

                sum += this.muster3[x];

            }

            console.log('原型模式', sum)

    }

    arr3 = [11,23,22,13,45,23,43,10];

    var group3 = new createGroup3(arr3);

    group3.sum();

第五种:组合使用构造函数模式和原型模式

function createGroup4(muster4){

      this.muster4 = muster4;

    }           

    createGroup4.prototype = {

        constructor:createGroup4,

        sum:function(){

            var sum = 0;

            var x;

            for(x in this.muster4){

                sum += this.muster4[x];

            }

            console.log('组合使用构造函数模式和原型模式', sum)

        }

    }

    arr4 = [11,23,22,13,45,23,43,10];

    var group4 = new createGroup4(arr4);

    group4.sum();

第六种:

简单粗暴地理解js原型链--js面向对象编程(转载)

http://www.cnblogs.com/qieguo/p/5451626.html

相关文章

  • 《软件工程》笔记7

    面向对象的实现 面向对象的程序设计最好还是选用面向对象的编程语言。 良好的程序设计风格对于面向对象实现来说格外重要...

  • 第四章 对象与类

    1 面向对象程序设计概述 面向对象程序设计(简称OOP)是当今主流的程序设计范型 Java是完全面向对象的,必须熟...

  • 《Java核心技术卷 I》之 Java对象与类

    Java对象与类 面向对象程序设计 面向对象程序设计,简称OOP,Java语言就是完全面向对象的。 类 类(cla...

  • JavaScript面向对象编程指南--读书笔记(上)

    第一章:面向对象的JavaScript 面向对象的程序设计 面向对象程序设计(oop)中最常用到的概念: 对象、方...

  • python面向对象编程

    面向对象编程(一) 1、面向过程程序设计与面向对象程序设计: 面向过程的程序设计把计算机程序视为一系列的命令集合,...

  • oc编程思想

    面向对象概念 面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一...

  • 编程语言基础概念1

    什么是面向对象? 面向对象:指在程序设计中采用封装、继承、多态等设计方法。 什么是面向过程? 面向过程:程序设计按...

  • 面向对象

    title:面向对象tags: 基础,Java 面向对象 面向对象程序设计简介 面向对象的基本思想是使用类、对象、...

  • 三、对象与类

    面向对象程序设计概述 面向对象的程序设计(简称OOP)时当今主流的程序设计范型,已经取代了“结构化”过程化程序设计...

  • JavaSE-面向对象编程

    [TOC] 第一章:面向对象-概述 1.1-什么是面向对象? 概述 面向对象是一种程序设计思想。 程序设计的目的是...

网友评论

      本文标题:面向对象的程序设计

      本文链接:https://www.haomeiwen.com/subject/wzunqftx.html