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

Javascript
用JavaScript实现浏览器地震效果
Javascript实例教程(8) 利用Javascript基于浏览器类型的重定向
Javascript实例教程(14) 鼠标触发窗口
使主页呈现“飞舞”特效
Javascript实例教程(21) OLE Automation(1)
Javascript实例教程(13) 鼠标移过时报警
Javascript实例教程(10) 随机显示图片
Javascript实例教程(2) 创建弹出式窗口
JavaScript 小技巧(第十集)
Javascript实例教程(3) 创建折叠式导航菜单
Javascript实例教程(7) 利用Javascript进行密码保护
完美解决一个事件激活多个函数(2)
Javascript模拟游戏中的弹出菜单效果
Javascript实例教程(6) 在一个表单中设置和检查Cookies
JavaScript 小技巧(第八集)
Javascript实例教程(4) 探测浏览器插件
JavaScript 小技巧(第九集)
JavaScript学习:基础继承机制
初学Javascript之cookie篇(译)
让弹出窗口变得“体贴”一些(javascript)

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 106 ::
收藏到网摘: 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方法。