`
blue2048
  • 浏览: 183779 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

javascript 面向对象编程-prototype+json模式

阅读更多
js在初学者看来有点面向过程感觉,写function,操纵页面DOM元素,这估计是吸引人最先接触和使用js的亮点。
但是,js从设计上来说,完全是面向对象的!
只是这种对象有别于传统的Java,C++中的对象,我对js对象概念的理解是,
js中的对象更像是一个集合,存储属性和方法的集合
js里一切皆对象,function本身也是对象,js解释器会将将function的调用解释为,new function(...) 实例,来跑程序。下面就是一个简单的对象。
function obj(){};
obj.name = "forObj";
obj.address = "";
var a = new obj();
alert(a.name);

下面,让我们来看看js面向对象编程的几种方式
1.使用Object,new出对象实例,再添加属性和方法
2.使用原型方式,定义出对象类,然后new出对象
3.构造器模式
4.prototype模式(使用Json格式)

2.原始模式
上面的代码是最原始的原型模式,可以看出,如果想要new出多个相同类型的对象,只是属性不同,那么需要定义多次这样的代码块,而且使用时,也看不出这些对象之间的关系

3构造器模式
function obj(name,address){
  this.name = name;
  this.address = address;

 this.CONSTANT = 5;
}
 var a = new obj("zhangSan","zhong hua da jie");
 var b = new obj("liSi","hua nan lu");


这样,就比避免的原始原型模式的弊端,但是,可以看到,代码中的常量,每个实例化对象都会有一份,多占用了内存空间,为了追求尽善尽美的编程模式,出现了prototype模式

4.prototype模式

function obj(name,address){
  this.name = name;
  this.address = address;
}

obj.prototype = {
   CONSTANTNUM = 6,
   CONSTANTSTR = ""
}

var a = new obj("zhangSan","zhong hua da jie");
 var b = new obj("liSi","hua nan lu");


这样在不同的对象间共享了从prototype中继承的东西,protocoltype模式是先进比较流行的js面向对象编程的模式。大家可以在实际编程中体验一下,
分享到:
评论

相关推荐

    讲解JavaScript的面向对象的编程

    本人一行注释一行代码翻译了该大师的艺术作品--目的说明它是在第1,2阶段文档演示的JavaScript面向对象的书写方式的进一步改进,它是现代JavaScript面向对象编程方式(使用基本类来编码)的过渡代码--没有它就没有当今...

    javascript框架(json.jQuery.prototype).rar

    同时,"prototype"在这里可能指的是JavaScript对象原型,这是理解JavaScript面向对象编程的关键概念。 **JSON (JavaScript Object Notation)**:JSON是一种轻量级的数据交换格式,它基于JavaScript的一个子集。由于...

    Javascript面向对象与继承.doc

    面向对象编程(Object-Oriented Programming,OOP)是一种编程范式,它基于对象的概念,将数据和处理数据的方法组织在一起。在JavaScript中,一切皆为对象,包括函数和基本数据类型。 #### 1. 对象 对象是...

    Prototype中文帮助文档

    面向对象编程 Prototype 提供了一套完整的面向对象机制,使得在JavaScript中实现类和继承变得更加容易。通过`Class.create()`方法,我们可以创建新的类,而`Object.extend()`和`Prototype.extend()`则用于实现类的...

    Javascript 面向对象程式学习笔记收藏

    在JavaScript中,面向对象编程(Object-Oriented Programming,简称OOP)是一种重要的编程范式,它允许我们通过对象和类的概念来组织代码,提高代码的可读性和可维护性。本文将深入探讨JavaScript中的面向对象编程,...

    基于Prototype + Spring + Hibernate实现的自动提示功能

    Hibernate则是一个流行的Java ORM(对象关系映射)框架,它简化了数据库操作,允许开发者使用面向对象的方式来处理数据库事务。在自动提示功能中,Hibernate可能是用来从数据库中检索匹配的数据,比如根据用户的输入...

    再践javascript对象、原型、属性、构造函数、扩展、json.docx

    - **基于类的对象**:尽管JavaScript本质上是一门基于原型的语言,但它也支持类似面向对象编程中的类的概念。开发者可以通过自定义构造函数来创建对象,这种方式类似于其他面向对象语言中的类的实现。 - **基于...

    Manning - Prototype.and.Scriptaculous.in.Action

    - **ASP.NET 和 C#**:ASP.NET 是一个流行的 Web 开发框架,而 C# 是 Microsoft 推出的一种面向对象的语言。使用 Prototype 和 Scriptaculous 可以增强 ASP.NET 应用程序的交互性和用户体验。 - **Java**:Java 也是...

    javascript类库prototype.js

    6. **Class与Object继承**:Prototype.js 引入了面向对象的概念,实现了类(Class)和对象继承,使得JavaScript具备了更接近传统面向对象语言的编程模式。 7. **JSON支持**:随着JSON成为数据交换的主流格式,...

    javascript面象对象编程

    JavaScript中的面向对象编程(Object-Oriented Programming, OOP)是一种设计模式,它允许开发者创建具有封装、继承和多态性的复杂结构。在JavaScript中,虽然没有像Java或C++那样的类关键字,但它通过函数和原型...

    prototype1.4

    这款库的核心在于其对对象原型(prototype)机制的深入利用,极大地扩展了JavaScript的面向对象编程能力。以下是对Prototype 1.4的详细解读。 1. **对象原型和继承** - 在JavaScript中,对象的原型是一种机制,...

    javascript面向对象创建对象的方式小结.docx

    ### JavaScript面向对象创建对象的方式小结 #### 一、引言 在JavaScript中,面向对象编程(OOP)是一种非常重要的编程范式。它通过创建和操作对象...希望本文能够帮助开发者更好地理解和应用JavaScript面向对象编程。

    Prototype-1.6.0 中文版\英文版\Prototype.js

    Prototype.js 是一个广泛使用的JavaScript库...无论是DOM操作、Ajax通信还是面向对象编程,Prototype都提供了一套完整的解决方案。对于想要提升JavaScript开发能力的开发者来说,学习和掌握Prototype.js是非常有益的。

    prototype.js简介

    1. **面向对象编程** - prototype.js 引入了类的概念,使得JavaScript支持类式的继承。它通过`Class.create()`方法创建类,通过`Object.extend()`方法实现对象的继承。此外,还提供了`prototype`属性来扩展类的行为...

    lead-pro-prototype

    总结来说,"lead-pro-prototype" 是一个展示 TypeScript 实战应用的项目,涵盖了类型系统、模块化、面向对象编程、装饰器和设计模式等多个方面。通过研究这个项目,开发者可以深入了解 TypeScript 如何提升开发体验...

    javascript 面向对象编程 聊聊对象的事

    此外,JavaScript还提供了构造函数(Constructor)和原型(Prototype)机制来实现面向对象编程的继承和多态性。构造函数通常以大写字母开头,用于创建特定类型的新对象,而原型则允许对象共享属性和方法,实现代码...

    JavaScript进阶基础-3

    面向对象是一种编程范式,它关注的是对象,而不是执行过程。在JavaScript中,面向对象主要体现在对象的创建、继承和封装等方面。 6.1.1 创建对象 - **字面量创建对象**:这是最简单直接的方式,通过大括号{}定义一...

    原型设计模式prototype

    在面向对象编程中,当我们需要频繁地创建具有相同或相似属性的对象时,原型模式可以极大地提高效率。 ### 模式原理 在原型模式中,一个类定义了创建新对象的接口,而其实现由它的子类完成。这个接口通常只有一个...

    js面向对象

    这些是JavaScript面向对象编程的核心概念,理解并熟练运用它们对于编写高效、可维护的JavaScript代码至关重要。在实际开发中,开发者还会结合闭包、模块化、设计模式等其他技术,进一步提升代码质量。

Global site tag (gtag.js) - Google Analytics