当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JavaScript学习笔记:创建对象和构造类

Javascript
js 方法实现返回多个数据的代码
Ext 表单布局实例代码
javascript document.referrer 用法
JavaScript 字符编码规则
JS 动态加载脚本的4种方法
jQuery textarea的长度进行验证
jQuery select的操作实现代码
jQuery 1.2.x 升級 1.3.x 注意事项
关于viewport,Ext.panel和Ext.form.panel的关系
日期 时间js控件
JavaScript的parseInt 进制问题
javascript 有用的脚本函数
javascript 两个字符串比较函数
javascript 代码运行器
js arguments.callee的应用代码
JavaScript Table排序 2.0 (更新)
给Function做的OOP扩展
<script defer> defer 是什么意思
FF和IE之间7个JavaScript的差异
javascript获取当前ip的代码

Javascript 中的 JavaScript学习笔记:创建对象和构造类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 216 ::
收藏到网摘: n/a

创建一个对象
Java代码
 <script type="text/javaScript"> var newObject=new Object(); //创建一个对象 newObject.firstName="frank"; //增加一个firstName属性 newObject.sayName=function(){ alert(this.firstName); } //添加一个sayName方法
//调用sayName方法
// newObject.sayName();
// newObject["sayName"](); var FirstName=newObject["firstName"]; var whatFunction;
// if(whatVolume==1){
// whatFunction="sayName";
// }else if(whatVolume==2){
// whatFunction="sayLoudly"
// }
// newObject[whatFunction](); function sayLoudly(){ alert(this.firstName.toUpperCase()); } newObject.sayLoudly=sayLoudly; //另一种方式添加方法 newObject["sayLoudly"](); </script>

利用json(javaScript Object Notation)创建对象和上面同样的效果。
Java代码
 function sayLoudly(){ alert(this.firstName.toUpperCase()); } var newObject={ firstName:"frank", sayName:function(){alert(this.firstName);}, sayLoudly:sayLoudly };
//也可以这样 var newObject={ firstName:"frank", sayName:function(){alert(this.firstName);}, sayLoudly:sayLoudly, lastName:{ lastName:"ziggy", sayName:function(){alert(this.lastName);} } }; newObject.lastName.sayName();

这样也ok
Java代码
 function sayLoudly(){ alert(this.name.toUpperCase()); } function sayName(){ alert(this.name); } var newObject={ name:"frank", sayName:sayName, sayLoudly:sayLoudly, lastName:{ name:"ziggy", sayName:sayName } }; newObject.lastName.sayName();

JavaScript 中的类,还有构造方法。。。
Java代码
 function newClass(){ alert("constructor"); this.firstName="frank"; this.sayName=function(){alert(this.firstName);} // return this; } //var nc=newClass(); var nc=new newClass(); //nc.firstName="ziggy"; is ok nc.sayName();

还可以这样来构造类
Java代码
 function newClass(){ this.firstName="frank"; } newClass.prototype.sayName=function(){ alert(this.firstName); } var nc=new newClass(); nc.firstName="ziggy"; nc.sayName(); var nc2=new newClass(); nc2.sayName();

一般用prototypes来添加方法,这样不管有多少个实例,在内存中只有一个sayName方法。