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 相关文章推荐
JS 用6N±1法求素数 实例教程
Oct 20 Javascript
jquery validator 插件增加日期比较方法
Feb 21 Javascript
10个基于jQuery或JavaScript的WYSIWYG 编辑器整理
May 06 Javascript
div当滚动到页面顶部的时候固定在顶部实例代码
May 27 Javascript
微信小程序 Toast自定义实例详解
Jan 20 Javascript
js 数据存储和DOM编程
Feb 09 Javascript
React-Native之定时器Timer的实现代码
Oct 04 Javascript
vue.js,ajax渲染页面的实例
Feb 11 Javascript
vue2实现搜索结果中的搜索关键字高亮的代码
Aug 29 Javascript
JS替换字符串中指定位置的字符(多种方法)
May 28 Javascript
使用Vue Composition API写出清晰、可扩展的表单实现
Jun 10 Javascript
jquery实现穿梭框功能
Jan 19 jQuery
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怎样调用MSSQL的存储过程
2006/10/09 PHP
php中++i 与 i++ 的区别
2012/08/08 PHP
PHP 快速排序算法详解
2014/11/10 PHP
php实现的微信红包算法分析(非官方)
2015/09/25 PHP
PHP获取文件扩展名的方法实例总结
2017/06/10 PHP
php实现的统计字数函数定义与使用示例
2017/07/26 PHP
Date对象格式化函数代码
2010/07/17 Javascript
jquery.validate的使用说明介绍
2013/11/12 Javascript
JavaScript代码轻松实现网页内容禁止复制(代码简单)
2015/10/23 Javascript
AngularJS监听路由变化的方法
2017/03/07 Javascript
详解JavaScript按概率随机生成事件
2017/08/02 Javascript
纯js实现页面返回顶部的动画(超简单)
2017/08/10 Javascript
js实现关闭网页出现是否离开提示
2017/12/07 Javascript
微信小程序实现的动态设置导航栏标题功能示例
2019/01/31 Javascript
JS实现骰子3D旋转效果
2019/10/24 Javascript
解决vue项目本地启动时无法携带cookie的问题
2021/02/06 Vue.js
Python 基础教程之包和类的用法
2017/02/23 Python
Python解决走迷宫问题算法示例
2018/07/27 Python
python cs架构实现简单文件传输
2020/03/20 Python
解决项目pycharm能运行,在终端却无法运行的问题
2019/01/19 Python
python 利用文件锁单例执行脚本的方法
2019/02/19 Python
详解Python数据分析--Pandas知识点
2019/03/23 Python
详解Python匿名函数(lambda函数)
2019/04/19 Python
python opencv如何实现图片绘制
2020/01/19 Python
Django自定义全局403、404、500错误页面的示例代码
2020/03/08 Python
使用python创建生成动态链接库dll的方法
2020/05/09 Python
约瑟夫·特纳男装:Joseph Turner
2017/10/10 全球购物
Gretna Green中文官网:苏格兰格林小镇
2019/10/16 全球购物
物理力学求职信
2014/02/18 职场文书
工会趣味活动方案
2014/08/18 职场文书
师德师风的心得体会
2014/09/02 职场文书
2015年度物流工作总结
2015/04/30 职场文书
医院感染管理制度
2015/08/05 职场文书
读《瓦尔登湖》有感:每个人都需要一个瓦尔登湖
2019/10/17 职场文书
关于JavaScript回调函数的深入理解
2021/06/27 Javascript
Windows Server 版本 20H2 于 8 月 9 日停止支持,Win10 版本 21H1 将于 12 月结束支
2022/07/23 数码科技