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 相关文章推荐
javascript基本语法分析说明
Jun 15 Javascript
javascript 四则运算精度修正函数代码
May 31 Javascript
Jquery跨域获得Json时invalid label错误的解决办法
Jan 11 Javascript
Jquery操作js数组及对象示例代码
May 11 Javascript
超级好用的jQuery圆角插件 Corner速成
Aug 31 Javascript
js操作cookie保存浏览记录的方法
Dec 25 Javascript
js 求时间差的实现代码
Apr 26 Javascript
AngularJS内建服务$location及其功能详解
Jul 01 Javascript
详解angularJS+Ionic移动端图片上传的解决办法
Sep 13 Javascript
vue新vue-cli3环境配置和模拟json数据的实例
Sep 19 Javascript
微信小程序顶部导航栏可滑动并选中放大
Dec 05 Javascript
解决vue scoped html样式无效的问题
Oct 24 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
Zend Studio 实用快捷键一览表(精心整理)
2013/08/10 PHP
web server使用php生成web页面的三种方法总结
2013/10/28 PHP
CodeIgniter启用缓存和清除缓存的方法
2014/06/12 PHP
php程序员应具有的7种能力小结
2014/11/27 PHP
在b/s开发中经常用到的javaScript技术
2006/08/23 Javascript
javascript 按回车键相应按钮提交事件
2009/11/02 Javascript
一个简单的JavaScript数据缓存系统实现代码
2010/10/24 Javascript
超级简单实现JavaScript MVC 样式框架
2015/03/24 Javascript
理解Angular数据双向绑定
2016/01/10 Javascript
Vue.js计算属性computed与watch(5)
2016/12/09 Javascript
vue.js给动态绑定的radio列表做批量编辑的方法
2018/02/28 Javascript
通过函数作用域和块级作用域看javascript的作用域链
2018/08/05 Javascript
vue绑定事件后获取绑定事件中的this方法
2018/09/15 Javascript
vue 使用vue-i18n做全局中英文切换的方法
2018/10/29 Javascript
基于AngularJS拖拽插件ngDraggable.js实现拖拽排序功能
2019/04/02 Javascript
Vuex中实现数据状态查询与更改
2019/11/08 Javascript
node.js使用net模块创建服务器和客户端示例【基于TCP协议】
2020/02/14 Javascript
[01:02:54]完美世界DOTA2联赛PWL S2 FTD vs GXR 第一场 11.22
2020/11/26 DOTA
Python实现以时间换空间的缓存替换算法
2016/02/19 Python
Python PyQt5实现的简易计算器功能示例
2017/08/23 Python
python处理数据,存进hive表的方法
2018/07/04 Python
python对离散变量的one-hot编码方法
2018/07/11 Python
Python爬虫使用脚本登录Github并查看信息
2018/07/16 Python
实例讲解python中的序列化知识点
2018/10/08 Python
python列表每个元素同增同减和列表元素去空格的实例
2019/07/20 Python
一个入门级python爬虫教程详解
2021/01/27 Python
Lookfantastic德国官网:英国知名美妆购物网站
2017/06/11 全球购物
美国半成品食材配送服务商:Home Chef
2018/01/25 全球购物
抄作业检讨书
2014/02/17 职场文书
绿色学校实施方案
2014/03/31 职场文书
教师评语大全
2014/04/28 职场文书
群众路线专项整治方案
2014/10/27 职场文书
职场新人知识:如何制定一份合理的工作计划?
2019/09/11 职场文书
Python 如何解决稀疏矩阵运算
2021/05/26 Python
python实现简单石头剪刀布游戏
2021/10/24 Python
JS class语法糖的深入剖析
2022/07/07 Javascript