监理公司管理系统 | 工程企业管理系统 | OA系统 | ERP系统 | 造价咨询管理系统 | 工程设计管理系统 | 签约案例 | 购买价格 | 在线试用 | 手机APP | 产品资料
X 关闭
南昌网站建设公司

当前位置:工程项目OA系统 > 泛普各地 > 江西OA系统 > 南昌OA系统 > 南昌网站建设公司

JavaScript开发创建类:向模块化进军

申请免费试用、咨询电话:400-8352-114

南昌网站建设    www.diyphp.net

 

<DIV class=\ pages\??> <DIV id=\ numpage\??> 

在解说MVC 的实质之前,我们起首给人人补习一下根底常识,比方JavaScript 的类和事情。只要打下一个坚实的根底,才干更好地进修、了解更高级的概念。

  关于静态的类来说,JavaScript 对象直接量就曾经够用了,但它对运用承继和实例来创立经典的类往往更有协助。有需要强调一下:JavaScript 是基于原型的编程言语,并没有包括内置类的完成。但经过JavaScript 可以随便地模仿出经典的类。

  JavaScript 中的类口碑并不太好,由于“不敷JavaScript”而饱受批判。jQuery 并没有触及太多架构办法和承继形式,这让JavaScript 开拓者确信本人不用思索太多架构性的器械,甚至感觉类的用途不大或爽性禁用类。实践上,类是另一种有效的东西,作为一名适用主义者,我置信类在JavaScript 中的主要性一点点不亚于它在其他现代编程言语中的主要性。

  JavaScript 中并没有真正的类,但JavaScript 中有结构函数和new 运算符。结构函数用来给实例对象初始化属性和值。任何JavaScript 函数都可以用做结构函数,结构函数必需运用new 运算符作为前缀来创立新的实例。

  new 运算符改动了函数的执行上下文,还改动了return 语句的行为。实践上,运用new和结构函数很相似于传统的完成了类的言语:

  var Person = function(name) {

  this.name = name;

  };

  // 实例化一个Person

  var alice = new Person('alice');

  // 反省这个实例

  assert( alice instanceof Person );

  结构函数的定名凡间运用驼峰定名法,首字母大写,以此和通俗的函数区分隔来,这是一种习气用法。记住这一点十分主要,由于你不会但愿用省略new 前缀的方法来挪用结构函数。

  // 不要这么做!

  Person('bob'); //=> undefined

  这个函数只会返回undefined,而且执行上下文是window(全局)对象,你无意间创立了一个全局变量name。挪用结构函数时不要丢失落new 要害字。

  当运用new 要害字来挪用结构函数时,执行上下文从全局对象(window)酿成一个空的上下文,这个上下文代表了重生成的实例。因而,this 要害字指向当时创立的实例。虽然了解起来有些绕,实践上其他言语内置类机制的完成也是如斯。

  默许状况下,假如你的结构函数中没有返回任何内容,就会返回this——当时的上下文。要否则就返回恣意非原始类型的值。比方,我们可以返回一个用以新建一个新类的函数,第一步要做的是创立本人的类模仿库:

  var Class = function(){

  var klass = function(){

  this.init.apply(this, arguments);

  };

  klass.prototype.init = function(){};

  return klass;

  };

  var Person = new Class;

  Person.prototype.init = function(){

  // 基于Person 的实例做初始化

  };

  // 用法:

  var person = new Person;

  令人隐晦的是,因为 JavaScript 2(http://www.mozilla.org/js/language/js20-1999-02-18/

  classes.html)标准从未被完成过,class 不断都是保存字。最经常见的做法是将变量名class 改为_class 或

发布:2007-03-31 14:49    编辑:泛普软件 · xiaona    [打印此页]    [关闭]
相关文章:
南昌OA系统
联系方式

成都公司:成都市成华区建设南路160号1层9号

重庆公司:重庆市江北区红旗河沟华创商务大厦18楼

咨询:400-8352-114

加微信,免费获取试用系统

QQ在线咨询

泛普南昌网站建设公司其他应用

南昌OA软件 南昌OA新闻动态 南昌OA信息化 南昌OA快博 南昌OA行业资讯 南昌软件开发公司 南昌门禁系统 南昌物业管理软件 南昌仓库管理软件 南昌餐饮管理软件 南昌网站建设公司