且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

Microsoft AJAX Client Library规范的实例

更新时间:2022-06-09 07:11:16

MSDN 帮助:

ms-help://MS.VSCC.v90/MS.MSDNQTR.v90.chs/dv_vwdcon/html/285e3a65-b42e-42c5-952d-baf184057899.htm

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;
},
getEmailAddress: function() {
  return this._emailAddress;
},
setEmailAddress: function(emailAddress) {
 this._emailAddress = emailAddress;
},
getName: function() {
 return this._firstName + ' ' + this._lastName;
},
dispose: function() {
 alert('bye ' + this.getName());
},
sendMail: function() {
 var emailAddress = this.getEmailAddress();
 if (emailAddress.indexOf('@') < 0) {
  emailAddress = emailAddress + '@example.com';
}
 alert('Sending mail to ' + emailAddress + ' ...');
},
toString: function() {
 return this.getName() + ' (' + this.getEmailAddress() + ')';
}
}
Demo.Person.registerClass('Demo.Person', null, Sys.IDisposable);
Demo.Employee = function(firstName, lastName, emailAddress, team, title) {
Demo.Employee.initializeBase(this, [firstName, lastName, emailAddress]);
 this._team = team;
 this._title = title;
}
Demo.Employee.prototype = {
getTeam: function() {
 return this._team;
},
setTeam: function(team) {
 this._team = team;
},
getTitle: function() {
 return this._title;
},
setTitle: function(title) {
 this._title = title;
},
toString: function() {
 return Demo.Employee.callBaseMethod(this, 'toString') + '\r\n' + this.getTitle() + '\r\n' + this.getTeam();
}
}
Demo.Employee.registerClass('Demo.Employee', Demo.Person);

以上的示例包含了:

命名空间、继承、属性等相关的概念

具体参考: http://jsfkit.codeplex.com