JavaScript 创建对象和构造类实现代码


Posted in Javascript onJuly 30, 2009

创建一个对象
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方法。
Javascript 相关文章推荐
Div Select挡住的解决办法
Aug 07 Javascript
使用jQuery.Validate进行客户端验证(初级篇) 不使用微软验证控件的理由
Jun 28 Javascript
JavaScript Math.ceil() 函数使用介绍
Dec 11 Javascript
jquery动态分页效果堪比时光网
Sep 25 Javascript
JavaScript中的闭包(Closure)详细介绍
Dec 30 Javascript
详解maxlength属性在textarea里奇怪的表现
Dec 27 Javascript
总结JavaScript设计模式编程中的享元模式使用
May 21 Javascript
jQuery实现模糊搜索功能的方法分析
Jun 29 jQuery
vue兄弟组件传递数据的实例
Sep 06 Javascript
动态内存分配导致影响Javascript性能的问题
Dec 18 Javascript
ES6 Iterator遍历器原理,应用场景及相关常用知识拓展详解
Feb 15 Javascript
js实现限定区域范围拖拉拽效果
Nov 20 Javascript
Javascript 学习笔记 错误处理
Jul 30 #Javascript
JS 学习笔记 防止发生命名冲突
Jul 30 #Javascript
javascript 处理HTML元素必须避免使用的一种方法
Jul 30 #Javascript
javascript 写的一个简单的timer
Jul 30 #Javascript
jquery imgareaselect 使用利用js与程序结合实现图片剪切
Jul 30 #Javascript
Javascript this指针
Jul 30 #Javascript
javascript 进度条 实现代码
Jul 30 #Javascript
You might like
星际争霸兵种名称对照表
2020/03/04 星际争霸
php和js交互一例-PHP教程,PHP应用
2007/01/03 PHP
php表单提交问题的解决方法
2011/04/12 PHP
php中限制ip段访问、禁止ip提交表单的代码分享
2014/08/22 PHP
php实现HTML实体编号与非ASCII字符串相互转换类实例
2016/11/02 PHP
Laravel 添加多语言提示信息的方法
2019/09/29 PHP
jQuery ui1.7 dialog只能弹出一次问题
2009/08/27 Javascript
iframe里使用JavaScript控制主页转向的方法
2015/04/03 Javascript
纯javascript实现四方向文本无缝滚动效果
2015/06/16 Javascript
Vue.js基础学习之class与样式绑定
2017/03/20 Javascript
ES6学习教程之对象字面量详解
2017/10/09 Javascript
详解tween.js 中文使用指南
2018/01/05 Javascript
微信小程序methods中定义的方法互相调用的实例代码
2018/08/07 Javascript
React传值 组件传值 之间的关系详解
2019/08/26 Javascript
[48:52]DOTA2上海特级锦标赛A组小组赛#2 Secret VS CDEC第一局
2016/02/25 DOTA
Windows下安装python2.7及科学计算套装
2015/03/05 Python
Python爬取qq空间说说的实例代码
2018/08/17 Python
Python 虚拟空间的使用代码详解
2019/06/10 Python
python opencv 简单阈值算法的实现
2019/08/04 Python
基于K.image_data_format() == 'channels_first' 的理解
2020/06/29 Python
HTML5 本地存储之如果没有数据库究竟会怎样
2013/04/25 HTML / CSS
雅诗兰黛(Estee Lauder)英国官方网站:世界顶级化妆品牌
2016/12/29 全球购物
预订从美国飞往印度的机票:MyTicketsToIndia
2017/05/19 全球购物
民生工程实施方案
2014/03/22 职场文书
优秀党支部书记事迹材料
2014/05/29 职场文书
测绘工程专业求职信
2014/07/15 职场文书
辞职信模板(中英文版)
2015/02/27 职场文书
学校社团活动总结
2015/05/07 职场文书
太空授课观后感
2015/06/17 职场文书
2016中秋晚会开幕词
2016/03/03 职场文书
解决Django transaction进行事务管理踩过的坑
2021/04/24 Python
Python 线程池模块之多线程操作代码
2021/05/20 Python
教你用Java Swing实现自助取款机系统
2021/06/11 Java/Android
Vue过滤器(filter)实现及应用场景详解
2021/06/15 Vue.js
javascript实现计算器功能详解流程
2021/11/01 Javascript
uniapp开发打包多端应用完整方法指南
2022/12/24 Javascript