此笔记摘自《Ajax-web开发、可重用组件及模式》,与前两篇面向对象Javascript学习笔记有所不同,前两篇更为详细,讨论更为深入,这篇更适合于Ajax的应用且简洁。
面向对象的方法
用Javascript进行面向对象编程有许多种方式创建对象或伪对象:
对象构造器(Object constructor)
原型(Prototype)
new算子(new operator)
字母符号法(Literal notation)
关联数组(Associative array)
Jscript.NET
(bansi:总觉得这本书的翻译怪怪的。。。)
使用new算子(貌似翻译为new操作符更好些)
var employee = new Object();
employee.id = 001;
employee.firstName = "Kris";
employee.lastName = "Hadlock";
employee.getFullName = function(){
return this.firstName + "" + this.lastName;
}
该方法的局限是不能为同一个对象构造多个实例,例如在上面代码中本我们就不能用这种方法构造多个employee的实例。
字母符号法:
employee = {
id : 001;
firstName : "Kris";
lastName : ""Hadlock;
getFullName : function(){
return this.firstName + "" + this.lastName;
}
}
此种方法很容易创建对象,但如果想要添加更多的方法和属性就非常难处理。
关联数组法:
var employee = new Array();
employee["firstName"] = "Kris";
employee["lastName"] = "Hadlock";
关联数组使访问特定的项目变得更加简单,下面示例创建多个employee对象,但当处理大量数据时,下面的方法可能会变得一团糟,因为要牢记数组中项目的全部路径。
var employee = new Array();
employee[001] ["firstName"] = "Kris";
employee[001] ["lastName"] = "Hadlock";
employee[002] ["firstName"] = "Kris";
employee[002] ["lastName"] = "Hadlock";
JScript.NET方法
需要安装.NET框架,很是限制,也懒得摘录,应该不会使用到。
对象构造器与原型前两篇笔记中已经很详细了也不摘录笔记了。
javascript面向对象编程学习笔记一
javascript面向对象编程学习笔记二