`
羽落窗前
  • 浏览: 108125 次
  • 性别: Icon_minigender_2
  • 来自: 厦门
社区版块
存档分类
最新评论

JavaScript的三种构造模式

 
阅读更多

在创建一个对象的时候,js有三种可以选择的方法

 

1. Factory Pattern

 

 

function createCourse(number, room, teacher){
	var course = new Object();
	course.number = number;
	course.room = room;
	course.teacher = teacher;
	
	course.toString = function(){
		return 'The course '+this.number+' is taken in room '+this.room+' by teacher '+this.teacher;
	};
	course.showCourse = function(){
		document.write(this);
	};
	return course;
}

var c1 = createCourse(1, 'R110', 'Mike');
c1.showCourse();

 

 

2. Constructor Pattern

 

 

function Course(number, room, teacher){
	this.number = number;
	this.room = room;
	this.teacher = teacher;
	
	this.toString = function(){
		return 'The course '+number+' is taken in room '+room+' by teacher '+teacher;
	};
	this.showCourse = function(){
		document.write(this);
	};
};

var  c2 = new Course(2,'T101', 'Matti');
c2.showCourse();

 

 

3. Prototype Pattern

 

function Course2(){
}
Course2.prototype.number = 'No course number';
Course2.prototype.room = 'No room number';
Course2.prototype.teacher = 'No teacher';

Course2.prototype.toString = function(){
	return 'The course '+this.number+' is taken in room '+this.room+' by teacher '+this.teacher;
};
Course2.prototype.showCourse = function(){
	document.write(this);
};

var c3 = new Course2();
c3.showCourse();

 

Prototype Pattern在内存和资源的利用上要更有效些,prototype pattern可以给对象设置默认值和默认方法

“Another alternative is the Prototype Pattern. With this pattern, memory and resources are used more effeciently as multiple objects share resources. The Constructor fuction boyd is (typically) null. Prototypies and functions are assigned to the constructed object's prototype. Prototype is a default property within and object that contains properties and methods available to all instances of that object. This technique allows defining 'default values' for objects and object functions. The object creation and call does not specify property values." -- 《Advanced Topics in Web Development - Fall 2011》

 

分享到:
评论

相关推荐

    Javascript 设计模式之构造函数模式.zip

    构造函数模式是JavaScript中的一种重要设计模式,用于创建对象。本文将深入探讨构造函数模式及其应用。 构造函数模式的核心在于使用函数来创建具有相似属性和方法的对象。在JavaScript中,函数可以作为构造函数来...

    JavaScript设计模式.pdf

    组合模式是将对象组合成树形结构,以表示部分整体的关系。它的主要作用是使客户端代码可以统一地处理单个对象和组合对象。 6. 门面模式(Facade Pattern): 门面模式是提供一个统一的接口来访问一个子系统的多个...

    javascript面向对象编程的几种模式详解

    以下是对标题和描述中提到的几种JavaScript面向对象编程模式的详细解释: 1. **构造函数与字面量结合模式** 在JavaScript中,我们可以通过构造函数和字面量语法来创建对象。构造函数用于定义对象的类型,而字面量...

    JavaScript高级与设计模式.zip

    4. **装饰者模式(Decorator)**:动态地给对象添加新的行为或职责,不改变其原有的结构。在JavaScript中,可以用于为对象添加额外功能,如AOP(面向切面编程)。 5. **模块模式(Module)**:JavaScript中,可以...

    JavaScript模式(中文版带目录)

    设计模式是解决常见问题的经过验证的解决方案,它们提供了良好的代码结构和可重用性。在JavaScript中,由于其独特的原型继承和动态类型,理解并运用设计模式能帮助开发者编写更高效、更易于维护的代码。 二、基本...

    Javascript 设计模式系统讲解与应用视频资源地址.7z

    JavaScript设计模式是编程实践中的一种重要思想,它提供了一套经过时间考验的最佳实践,用来解决常见的编程问题和提高代码的可维护性、可扩展性和可复用性。在JavaScript这种动态类型的脚本语言中,设计模式尤其重要...

    JavaScript设计模式之构造器模式(生成器模式)定义与用法实例分析.docx

    JavaScript中的构造器模式,也称为生成器模式,是一种创建型设计模式,主要目的是为了创建对象。构造器模式在解决工厂模式无法识别对象类型的问题时,引入了特定的构造函数来创建具有特定特性的对象。 首先,让我们...

    JavaScript模式中文[pdf] 百度云

     类式继承模式#2——借用构造函数  类式继承模式#3——借用和设置原型  类式继承模式#4——共享原型  类式继承模式#5——临时构造函数  Klass  原型继承  通过复制属性实现继承  借用方法  小结  第7章 ...

    javascript设计模式Constructor(构造器)模式.docx

    构造器模式是JavaScript中一种重要的设计模式,它为创建和初始化对象提供了一种灵活且结构化的方法。通过合理运用构造器模式及其改进形式,开发者可以编写出更加高效、可维护的代码。希望本文能帮助您更好地理解并...

    javascript组合使用构造函数模式和原型模式实例.docx

    在JavaScript编程中,构造函数模式和原型模式是两种常见的面向对象编程(OOP)方式。这两种模式各有优势,结合使用能够更好地实现代码复用和封装,提高代码的可维护性和扩展性。 #### 二、构造函数模式 构造函数模式...

    javascript oop模式讲解

    JavaScript OOP(面向对象编程)模式是编程领域中一种重要的设计思想,它允许开发者通过类和对象来组织和管理代码,提高代码的可重用性和可维护性。在这个讲解中,我们将深入探讨JavaScript中的OOP模式,特别是如何...

    JavaScript Patterns (JavaScript模式)

    ### JavaScript Patterns (JavaScript模式) #### 一、简介 在IT领域,《JavaScript Patterns》是一本备受推崇的专业书籍,它深入探讨了JavaScript编程中的各种设计模式与最佳实践。本书由才华横溢的Stoyan ...

    javascript 面向对象编程.pdf javascript 设计模式与开发实践.pdf

    JavaScript是一种广泛应用于Web开发的脚本语言,尤其在构建交互式和动态网页方面扮演着重要角色。面向对象编程(Object-Oriented Programming, OOP)是JavaScript中的核心概念,而设计模式则是解决常见编程问题的...

    JavaScript的十五种设计模式

    JavaScript的十五种设计模式是前端开发中的重要概念,它们代表了一套解决常见编程问题和优化代码组织的方法。这些模式能够帮助开发者写出更高效、可维护的代码,尤其对于初学者和中级开发者来说,掌握这些模式至关...

    JavaScript设计模式与开发实践_himppf_js_jspremise_精通javascript_Js设计模式_

    JavaScript设计模式主要分为创建型、结构型和行为型三大类。创建型设计模式如单例模式、工厂模式、建造者模式等,关注对象的创建过程,确保在程序中只存在一个实例或者提供一个创建对象的接口。结构型模式如代理模式...

    JavaScript模式

    本书由Stoyan Stefanov撰写,陈新翻译,主要针对JavaScript开发者,旨在帮助他们理解并应用各种软件设计模式来优化代码结构和提高程序效率。 ### JavaScript模式概述 #### 1. **介绍** - **作者背景**:Stoyan ...

    javascript工厂模式和构造函数模式创建对象方法解析.docx

    ### JavaScript工厂模式与构造函数模式创建对象方法解析 #### 一、工厂模式 在JavaScript中,工厂模式是一种常用的设计模式,用于封装创建对象的过程。它通过一个函数来创建具有相似特性的多个对象实例,这些对象...

    JavaScript 设计模式之策略模式.zip

    策略模式是一种行为设计模式,它使你能在运行时改变对象的行为。在JavaScript中,这种模式尤其有用,因为JavaScript是动态类型的,允许我们在程序运行时轻松地更改对象的属性和行为。下面我们将深入探讨策略模式的...

    通过javascript实现单例模式.rar

    在JavaScript中,单例模式(Singleton Pattern)是一种创建型设计模式,它确保一个类只有一个实例,并提供一个全局访问点来获取该实例。在JavaScript中实现单例模式通常涉及使用一个对象字面量或创建一个包含实例的...

Global site tag (gtag.js) - Google Analytics