JavaScript 创建对象


Posted in Javascript onJuly 17, 2009

第一种:JSON方式/对象直接量
格式:
var 对象名 = {
变量1: 变量1的值,
变量1: 变量1的值,
……,
函数1: function() {
函数体
},
函数2: function() {
函数体
}//Note:最后的逗号要去除为了和IE兼容。
};
说明:
(1) 大括号内直接填写变量或者函数;
(2) 对象的内容与值以冒号分隔,成对出现;
(3) 包含的变量或者函数之间以逗号分隔;
(4) 函数需要写在function(){}的大括号之内。
例子:
var 对象名 = {
name: “Vicky”,
age: 26,
eat: function() {
alert(‘I wanna eat meat');
},
sleep: function() {
alert(‘I wanna sleep');
}
};
注释:类似的方式也叫做匿名类
匿名类举例:
{
index: '//',
reg: new RegExp('^//.*$'),
css: "comment"
}
上面的方式创建了类,只是没赋给一个变量而已。
第二种:function方式
格式:
function data() {
this.变量1=变量1的值;
this.变量2=变量2的值;
……;
this.函数1= function() {
函数体
};
this.函数2= function() {
函数体
};
}
说明:
(1) 其内的变量或者函数前必需写上this关键字;
(2) 对象的内容与值以等号分隔,成对出现;
(3) 包含的变量或者函数之间以分号分隔。
(4) 函数需要写在function(){}的大括号之内。
例子:
function data() {
this.name=“Vicky””;
this.age=26;
this.eat=function() {
alert(‘I wanna eat meat');
};
this.sleep=function() {
alert(‘I wanna sleep');
};
}
第三种:原型方式
格式:
var 对象名 = {};
对象名.prototype.变量1=变量1的值;
对象名.prototype.变量2=变量2的值;
……;
对象名.prototype.函数1= function() {
函数体
};
对象名.prototype.函数2= function() {
函数体
};
……;
说明:
(1) 初始对象体内可以不定义任何东西;
(2) 在要定义的变量前加“对象名.prototype.”的格式;
(3) 对象的内容与值以等号分隔,成对出现;
(4) 包含的变量或者函数之间以分号分隔,也可以省去分号。
(5) 函数需要写在function(){}的大括号之内。
例子:
var data = {};
data.prototype. name ="Vicky”;
data.prototype. age =20;
data.prototype. eat = function() {
alert(‘I wanna eat meat');
};
data.prototype. sleep= function() {
alert(‘I wanna sleep');
};
第四种:create方式
该方式利用了Prototype JavaScript组件库。
格式:
var 对象名 = Class.create();
Object.extend(对象名.prototype, {
变量1: 变量1的值,
变量1: 变量1的值,
……,
函数1: function() {
函数体
},
函数2: function() {
函数体
},
……
});
说明:
(1) 对象的创建使用了Prototype库中的Class.create()函数;
(2) 对象的内容使用Prototype库中的Object.extend()函数来扩展;
(3) 被扩展的对象在传入Object.extend函数时一定要带上prototype,
(4) 扩展内容被大括号包含,其内与JSON方式的定义格式完全相同。
例子:
var data = Class.create();
Object.extend(dta.prototype, {
name: "Vicky",
age: 20,
eat: function() {
alert(‘I wanna eat meat');
},
sleep: function() {
alert(‘I wanna sleep');
}
});
其实,JS对象的定义还有其它的方式,你也可以用上面4种进行组合定义,这显出了JS作为动态语言的自由性。
JS对象的创建正规方法如下:
var d1 = new Data();
JS对象变量的引用方式有两种:
(1) 点号方式引用,如,data.name。
(2) 数组方式引用,如,data[‘name']。

Javascript 相关文章推荐
jQuery控制Div拖拽效果完整实例分析
Apr 15 Javascript
jQuery实现信息提示框(带有圆角框与动画)效果
Aug 07 Javascript
jQuery实现级联下拉框实战(5)
Feb 08 Javascript
jquery实现手机端单店铺购物车结算删除功能
Feb 22 Javascript
Javascript(es2016) import和require用法和区别详解
Aug 11 Javascript
seajs中模块依赖的加载处理实例分析
Oct 10 Javascript
Vue开发之封装分页组件与使用示例
Apr 25 Javascript
微信小程序云开发之使用云存储
May 17 Javascript
javascript实现图片轮播代码
Jul 09 Javascript
JavaScript实现文件下载并重命名代码实例
Dec 12 Javascript
vue2.0 解决抽取公用js的问题
Jul 31 Javascript
js 函数性能比较方法
Aug 24 Javascript
prototype 学习笔记整理
Jul 17 #Javascript
表单元素事件 (Form Element Events)
Jul 17 #Javascript
优化 JavaScript 代码的方法小结
Jul 16 #Javascript
Javascript 事件流和事件绑定
Jul 16 #Javascript
js 对象是否存在判断
Jul 15 #Javascript
js 实现无缝滚动 兼容IE和FF
Jul 15 #Javascript
兼容IE/Firefox/Opera/Safari的检测页面装载完毕的脚本Ext.onReady的实现
Jul 14 #Javascript
You might like
真正的ZIP文件操作类(php)
2007/07/21 PHP
yii上传文件或图片实例
2014/04/01 PHP
在PHP站点的页面上添加Facebook评论插件的实例教程
2016/01/08 PHP
php自定义截取中文字符串-utf8版
2017/02/27 PHP
浅谈PHP中pack、unpack的详细用法
2018/03/12 PHP
php判断数组是否为空的实例方法
2020/05/10 PHP
jQuery入门知识简介
2010/03/04 Javascript
javascript去掉前后空格的实例
2013/11/07 Javascript
JS实现多物体缓冲运动实例代码
2013/11/29 Javascript
js arguments,jcallee caller用法总结
2013/11/30 Javascript
js 显示base64编码的二进制流网页图片
2014/04/04 Javascript
js获取当前日期时间及其它操作汇总
2015/04/17 Javascript
简单介绍jsonp 使用小结
2016/01/27 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
vue-router 组件复用问题详解
2018/01/22 Javascript
JS数组的高级使用方法示例小结
2020/03/14 Javascript
JS加载解析Markdown文档过程详解
2020/05/19 Javascript
微信小程序实现多图上传
2020/06/19 Javascript
JS实现电脑虚拟键盘打字测试
2020/06/24 Javascript
PyQt5 QTable插入图片并动态更新的实例
2019/06/18 Python
python暴力解压rar加密文件过程详解
2019/07/05 Python
使用python模拟高斯分布例子
2019/12/09 Python
tensorflow 报错unitialized value的解决方法
2020/02/06 Python
python列表返回重复数据的下标
2020/02/10 Python
实例讲解利用HTML5 Canvas API操作图形旋转的方法
2016/03/22 HTML / CSS
size?瑞典:英国伦敦的球鞋精品店
2018/03/01 全球购物
Godiva巧克力英国官网:比利时歌帝梵巧克力
2018/08/28 全球购物
什么是表空间(tablespace)和系统表空间(System tablespace)
2013/02/25 面试题
应届行政管理专业个人自我评价
2013/12/28 职场文书
市场营销战略计划书
2014/05/06 职场文书
抗洪救灾标语
2014/10/08 职场文书
组织生活会表态发言材料
2014/10/17 职场文书
小学生作文评语集锦
2014/12/25 职场文书
清洁员岗位职责
2015/02/15 职场文书
节约用电通知
2015/04/25 职场文书
某某店铺的开业庆典主持词范本
2019/11/25 职场文书