你的位置:首页 > 软件开发 > ajax > Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace

Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace

发布时间:2008-10-23 21:48:00
在Javascript中并没有空间、类、接口这些概念,Atlas对这些东西实现封装了,增强了JavaScript面向对象方面的能力,本文看一下如何使用命名空间。 主要内容1.概述2.完整示例 一.概述在Javascript中并没有空间、类、接口这些概念,Atlas对这些东西进行了封装,增强了JavaScript面向对象方面的能力,本文看一下如何使用命名空间。在使用命名空间时有两个方法是需要

Javascript中并没有空间、类、接口这些概念,Atlas对这些东西实现封装了,增强了JavaScript面向对象方面的能力,本文看一下如何使用命名空间。

 

主要内容

1.概述

2.完整示例

 

一.概述

Javascript中并没有空间、类、接口这些概念,Atlas对这些东西进行了封装,增强了JavaScript面向对象方面的能力,本文看一下如何使用命名空间。在使用命名空间时有两个方法是需要我们注意的。

registerNamespace:注册一个命名空间

registerClass:注册一个类到某个命名空间中

二.完整示例

1.新建一个Atlas Web Site后,添加一个Namespace.js的文件,在这里我们注册一个Demo的命名空间,并创建Person类,把它注册到Demo命名空间中,如下所示:

Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace// JScript FileAtlas学习手记(27):JavaScript面向对象的扩展(一):命名空间NamespaceType.registerNamespace("Demo");Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间NamespaceAtlas学习手记(27):JavaScript面向对象的扩展(一):命名空间NamespaceDemo.Person = function(firstName, lastName, emailAddress) Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace{Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    var _firstName = firstName;Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    var _lastName = lastName;Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    var _emailAddress = emailAddress;Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间NamespaceAtlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    this.getFirstName = function() Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace{Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace        return _firstName;Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    }Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间NamespaceAtlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    this.getLastName = function() Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace{Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace        return _lastName;Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    }Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间NamespaceAtlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    this.getName = function() Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace{Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace        return _firstName + ' ' + _lastName;Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    }Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间NamespaceAtlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    this.dispose = function() Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace{Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace        alert('bye ' + this.getName());Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    }Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace}Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间NamespaceDemo.Person.registerClass('Demo.Person', null, Sys.IDisposable);

2.在ASPX页面中添加ScriptManager,这个总是不能少的:

Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace<atlas:ScriptManager runat="server" ID="scriptManager" />

3.引入我们刚才创建的JS文件:

Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace<script type="text/javascript" src='/images/loading.gif' data-original="Namespace.js"></script>

4.现在就可以在前端脚本中调用了:

Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace<script type="text/javascript" language="JavaScript">Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespacefunction OnButton1Click() Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间NamespaceAtlas学习手记(27):JavaScript面向对象的扩展(一):命名空间NamespaceAtlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace{Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    var testPerson = new Demo.Person('John', 'Smith', 'john.smith@example.com');Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    alert(testPerson.getFirstName() + " " + testPerson.getLastName() );Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace    return false;Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace}Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace</script>

5.添加一个Button,在它的单击事件中来调用:

Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace<div>Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace        This example and puts the Person class in the "Demo" namespace.Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace        <br />Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace        <br />Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace        <input id="Button1" value="Create Demo.Person" type="button" onclick="return OnButton1Click()" />Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace</div>

看看上面编写的代码,是不是很有面向对象的感觉呢?编译运行:

Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace

单击按钮后:

Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace

完整示例下载:http://files.cnblogs.com/Terrylee/AtlasNamespaceDemo.rar

原标题:Atlas学习手记(27):JavaScript面向对象的扩展(一):命名空间Namespace

关键词:JavaScript

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录