利用MS AJAX注册Javascript命名空间并创建类

(编辑:jimmy 日期: 2026/1/15 浏览:2)

一、为页面添加一个ScriptManager控件。

二、注册命名空间:

Type.registerNamespace("Demo");


三、为类添加构造函数、属性、方法。

Demo.sample=function(){}

四、注册类。

Demo.Person.registerClass('Demo.sample ', null, Sys.IDisposable);


下面是一个具体的实例:

Namespace.js

Type.registerNamespace("Demo");


Demo.Person = function(firstName, lastName, emailAddress) {

this._firstName = firstName;

this._lastName = lastName;

this._emailAddress = emailAddress;

}


Demo.Person.prototype = {


getFirstName: function() {

return this._firstName;

},


getLastName: function() {

return this._lastName;

},


getName: function() {

return this._firstName + ' ' + this._lastName;

},


dispose: function() {

alert('bye ' + this.getName());

}

}

Demo.Person.registerClass('Demo.Person', null, Sys.IDisposable);



Namespace.aspx代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>Namespace</title>

</head>


<body>

<form id="Main" runat="server">

<asp:ScriptManager runat="server" ID="scriptManager" />

</form>


<div>

<p>This example creates an instance of the Person class 

and puts it in the "Demo" namespace.</p>


<input id="Button1" value="Create Demo.Person" 

type="button" onclick="return OnButton1Click()" />


</div>


<script type="text/javascript" src="/UploadFiles/2021-04-02/Namespace.js">
<script type="text/javascript" language="JavaScript">


function OnButton1Click() 

{

var testPerson = new Demo.Person( 

'John', 'Smith', 'john.smith@example.com');

alert(testPerson.getFirstName() + " " + 

testPerson.getLastName() );


return false;

}



</script>


</body>

</html>


保存后看下运行效果。

一句话新闻

高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。