JavaScript中定义类或对象有多种方法:
以创建Car为实例说明。
var oCar = new Object;
oCar.color ="red";
oCar.doors = 4;
oCar.mpg=23;
oCar.showColor = function()
{
alert(this.color);
}
弊端:每个对象都有自己的一个showColor函数。
function Car(sColor,iDoors,iMpg)
{
this.color= sColor;
this.doors = i;
this.mpg = iMpg;
this.showColor = function()
{
alert(this.color)
};
}
弊端:构造函数重复生成函数,可以用外部函数重写构造函数(不太懂);
function Car()
{
}
Car.prototype.color = "red";
Car.prototype.doors =4;
Car.prototype.mpg = 23;
Car.prototype.drivers = new Array("Mike","Sue");
Car.prototype.showColor = function()
{
alert(this.color);
}
弊端:给一个实例添加drivers,另一个实例也添加了。
function Car()
{
}
Car.prototype.color = "red";
Car.prototype.doors =4;
Car.prototype.mpg = 23;
Car.prototype.drivers = new Array("Mike","Sue");
Car.prototype.showColor = function()
{
alert(this.color);
}
解决了两种弊端。
function Car(sColor,iDoors,iMpg)
{
this.color = sColor;
this.doors = iDoors;
this.mpg = iMpg;
this.drivers = new Array("Mike","Sue");
if(typeof Car._initialized == "undefined")
{
Car.prototype.showColor = function()
{
alert(this.color)
}
car._initialized = true;
}
}
function Car()
{
var oTempCar = new Object;
oTempCar.color="red";
oTempCar.doors = 4;
oTempCar.mpg = 23;
oTempCar.showColor = function()
{
ale(this.color)
}
return oTempCar;
}
采用哪种方式:
目前流行的是构造函数、原型方式,此外动态原型方式较为流行。
分享到:
相关推荐
XML的parser发展为两类:一种是"非确认类paeser",只检测文档是否遵守XML语法规则,是否用元素标识建立了文档树。另一种是"确认类paeser",它不但检测文档语法,结构树,而且比较解析你使用的元素标识是否遵守了相应...
与DotNet数据对象结合的自定义数据对象设计 (一) 数据对象与DataRow ASP.NET中大结果集的分页[翻译] .net 2.0 访问Oracle --与Sql Server的差异,注意事项,常见异常 Ado.net 与NHibernate的关系? 动态创建数据库...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
部署方式:本系统采用前后端分离的方式,后端提供RESTful API接口供前端调用。部署时,可以将后端打包成jar文件,然后使用Java命令行工具运行。前端代码可以直接部署到Web服务器(如Nginx或Apache)上。系统演示:...
不过,本书中介绍的几种有关显示XML文档的技术需要使用下列一种或多种Web创作语言:HTML、动态HTML(DHTML)和Microsoft JScript(普通JavaScript脚本语言的Microsoft版本)。尽管本书在例子中介绍了这些语言的特性...
法,而且不像学习一种全新的语言那样困难。 但在详细探讨 Ajax 是什么之前,先让我们花几分钟了解 Ajax 做 什么。目前,编写应用程序时有两种基本的选择: 桌面应用程序 Web 应用程序 两者是类似的,桌面...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
不过,本书中介绍的几种有关显示XML文档的技术需要使用下列一种或多种Web创作语言:HTML、动态HTML(DHTML)和Microsoft JScript(普通JavaScript脚本语言的Microsoft版本)。尽管本书在例子中介绍了这些语言的特性...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
就像新的编程语言或模型伴随着更多的痛苦,开发人员需要学习新的技巧及如何最好利用这些新技术。 二、AJAX模式 许多重要的技术和AJAX开发模式可以从现有的知识中获取。例如,在一个发送请求到服务端的应用...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用...
1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()...
1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()...
华报智能报表工具(ReportAll)是开发人员最理想的报表工具,具有全新的设计思想,对中国式报表和很多复杂报表有很强的针对性,他将“对象摆放”类和“电子表格”类报表开发工具完美融合,使用种类丰富且功能强大的...
不过,本书中介绍的几种有关显示XML文档的技术需要使用下列一种或多种Web创作语言:HTML、动态HTML(DHTML)和Microsoft JScript(普通JavaScript脚本语言的Microsoft版本)。尽管本书在例子中介绍了这些语言的特性...
因pdf的容量过大分4个压缩包打包,还有一个源码另外下载。 《.NET深入体验与实战精要》作者身为从事.NET一线开发的资深开发专家,常年耕耘技术博客,惠及无数.NET新知。此次将长期的思考、感悟,多年的系统开发、...
因pdf的容量过大分4个压缩包打包,还有一个源码另外下载。 《.NET深入体验与实战精要》作者身为从事.NET一线开发的资深开发专家,常年耕耘技术博客,惠及无数.NET新知。此次将长期的思考、感悟,多年的系统开发、...