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 相关文章推荐
在JavaScript中使用inline函数的问题
Mar 08 Javascript
javascript 多浏览器 事件大全
Mar 23 Javascript
简洁Ajax函数处理(示例代码)
Nov 15 Javascript
Jquery简单实现GridView行高亮的方法
Jun 15 Javascript
JavaScript必知必会(七)js对象继承
Jun 08 Javascript
JSON与XML的区别对比及案例应用
Nov 11 Javascript
原生js实现新闻列表展开/收起全文功能
Jan 20 Javascript
Vue单文件组件基础模板小结
Aug 10 Javascript
JS中原始值和引用值的储存方式示例详解
Mar 23 Javascript
vue.js实现的绑定class操作示例
Jul 06 Javascript
puppeteer实现html截图的示例代码
Jan 10 Javascript
Vue 组件注册全解析
Dec 17 Vue.js
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
获取php页面执行时间,数据库读写次数,函数调用次数等(THINKphp)
2013/06/03 PHP
PHP使用PDO 连接与连接管理操作实例分析
2020/04/21 PHP
JSON 数字排序多字段排序介绍
2013/09/18 Javascript
jQuery+PHP星级评分实现方法
2015/10/02 Javascript
JS实现超简洁网页title标题跑动闪烁提示效果代码
2015/10/23 Javascript
js实现模拟银行卡账号输入显示效果
2015/11/18 Javascript
JS实现按比例缩放图片的方法(附C#版代码)
2015/12/08 Javascript
深入理解jquery自定义动画animate()
2016/05/24 Javascript
Centos7 中安装 Node.js v4.4.4
2016/11/03 Javascript
vue2.0使用Sortable.js实现的拖拽功能示例
2017/02/21 Javascript
Node.js Mongodb 密码特殊字符 @的解决方法
2017/04/11 Javascript
纯js封装的ajax功能函数与用法示例
2018/05/14 Javascript
在小程序开发中使用npm的方法
2018/10/17 Javascript
从零开始实现Vue简单的Toast插件
2018/12/03 Javascript
JS访问对象两种方式区别解析
2020/08/29 Javascript
Python自定义主从分布式架构实例分析
2016/09/19 Python
Python 实现字符串中指定位置插入一个字符
2018/05/02 Python
Python SMTP发送邮件遇到的一些问题及解决办法
2018/10/24 Python
mac系统下Redis安装和使用步骤详解
2019/07/09 Python
Python基于进程池实现多进程过程解析
2020/04/30 Python
python字符串的index和find的区别详解
2020/06/20 Python
python爬虫爬取网页数据并解析数据
2020/09/18 Python
Python如何在bool函数中取值
2020/09/21 Python
python 可视化库PyG2Plot的使用
2021/01/21 Python
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
2013/03/30 面试题
网吧消防安全制度
2014/01/28 职场文书
2014迎新年晚会策划方案
2014/02/23 职场文书
大学生英语演讲稿
2014/04/24 职场文书
团队口号大全
2014/06/06 职场文书
2014年前台个人工作总结
2014/11/14 职场文书
护林员个人总结
2015/03/04 职场文书
学习型家庭事迹材料(2016精选版)
2016/02/29 职场文书
写作之关于描写老人的好段摘抄
2019/11/14 职场文书
python文件目录操作之os模块
2021/05/08 Python
JavaScript中document.activeELement焦点元素介绍
2021/11/27 Javascript
DE1103使用报告
2022/04/05 无线电