JavaScript中对象的不同创建方法


Posted in Javascript onAugust 12, 2016

javascript中的对象与一般的面向对象的程序设计语言(c++,Java等)不同,甚至很少有人说它是面向对象的程序设计语言,因为它没有类。javaScript只有对象,不是类的实例。javascript中的对象是基于原型的。

1.1句点运算符创建

javascript中的对象实际上就是一个由属性组成的关联数组,属性由名称和值组成,值的类型可以是任何数据类型,或者函数和其他对象。

创建一个简单对象:

var foo = {};
foo.prop_1 = 'bar';
foo.prop_2 = false;
foo.prop_3 = function() {
return 'hello world'; 
}
console.log(foo.prop_3());

通过引用赋值给foo,{}是对象字面量的表示方法,var foo={}也可以通过var foo = new Object()来显示地创建一个对象。

1.2 使用关联数组创建对象。

var foo = {};
foo['prop_1'] = 'bar';
foo['prop_2'] = false;
foo['prop_3'] = function() {
return 'hello world'; 
}

javascript中使用句点运算符和关联数组引用是等价的。使用关联数组的好处是在我们不知道对象的属性名称的时候可以用变量来作为关联数组的索引。例如:

var some_prop = 'prop_2';
foo[some_prop] = false;

1.3使用对象初始化器创建对象

一般我们在使用的时候回采用下面这种方法创建对象:

var foo = {
prop1:'bar',
prop2:false,
prop3:function(){
return 'hello world';
}
};

这种定义的方法称为对象得出初始化器

1.4 通过构造函数创建对象。

前面创建的对象都是一次性的。如果我们想创建多个规划好的对象,有若干个固定的属性、方法并且能够初始化。我们可以通过构造函数来创建复杂的对象:

function User(name,uri){
this.name = name;
this.uri = uri;
this.display = function() {
console.log(this.name);
}
}

然后可以用new语句创建对象。

var someuser = new User('byvoid','http://www.byvoid.com');

然后就可以通过someuser来访问这个对象的属性和方法。

以上所述是小编给大家介绍的JavaScript中对象的不同创建方法 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js字符串转成JSON
Nov 07 Javascript
js通过更改按钮的显示样式实现按钮的滑动效果
Apr 23 Javascript
js实现C#的StringBuilder效果完整实例
Dec 22 Javascript
在AngularJS中如何使用谷歌地图把当前位置显示出来
Jan 25 Javascript
基于jquery实现最简单的选项卡切换效果
May 08 Javascript
获取当前按钮或者html的ID名称实例(推荐)
Jun 23 Javascript
JavaScript中立即执行函数实例详解
Nov 04 Javascript
微信小程序五子棋游戏的悔棋实现方法【附demo源码下载】
Feb 20 Javascript
layui lay-verify form表单自定义验证规则详解
Sep 18 Javascript
微信小程序实现日历签到
Sep 21 Javascript
angular共享依赖的解决方案分享
Oct 15 Javascript
利用JS判断元素是否为数组的方法示例
Jan 08 Javascript
酷! 不同风格页面布局幻灯片特效js实现
Feb 19 #Javascript
JS+CSS3模拟溢出滚动效果
Aug 12 #Javascript
JS中script标签defer和async属性的区别详解
Aug 12 #Javascript
jquery实现网站列表切换效果的2种方法
Aug 12 #Javascript
很实用的js选项卡切换效果
Aug 12 #Javascript
js实现浏览器倒计时跳转页面效果
Aug 12 #Javascript
javascript实现瀑布流动态加载图片原理
Aug 12 #Javascript
You might like
实战mysql导出中文乱码及phpmyadmin导入中文乱码的解决方法
2010/06/11 PHP
php中使用DOM类读取XML文件的实现代码
2011/12/14 PHP
Composer设置忽略版本匹配的方法
2016/04/27 PHP
重定向实现代码
2006/11/20 Javascript
Javascript 读书笔记索引贴
2010/01/11 Javascript
jquery+json 通用三级联动下拉列表
2010/04/19 Javascript
简略说明Javascript中的= =(等于)与= = =(全等于)区别
2013/04/16 Javascript
详解Bootstrap的aria-label和aria-labelledby应用
2016/01/04 Javascript
JavaScript的React Web库的理念剖析及基础上手指南
2016/05/10 Javascript
AngularJS 应用身份认证的技巧总结
2016/11/07 Javascript
vue实现添加标签demo示例代码
2017/01/21 Javascript
JQuery validate 验证一个单独的表单元素实例
2017/02/17 Javascript
详解基于vue-cli3.0如何构建功能完善的前端架子
2018/10/09 Javascript
关于Vue中axios的封装实例详解
2019/10/20 Javascript
原生js拖拽实现图形伸缩效果
2020/02/10 Javascript
vue-cli3中配置alias和打包加hash值操作
2020/09/04 Javascript
[43:49]LGD vs CHAOS 2019国际邀请赛小组赛 BO2 第一场 8.15
2019/08/16 DOTA
Python 装饰器使用详解
2017/07/29 Python
pycharm 将django中多个app放到同个文件夹apps的处理方法
2018/05/30 Python
Python散点图与折线图绘制过程解析
2019/11/30 Python
python 解决cv2绘制中文乱码问题
2019/12/23 Python
tensorflow实现对张量数据的切片操作方式
2020/01/19 Python
在tensorflow中设置保存checkpoint的最大数量实例
2020/01/21 Python
python matplotlib.pyplot.plot()参数用法
2020/04/14 Python
详解tensorflow之过拟合问题实战
2020/11/01 Python
HTML5标签与HTML4标签的区别示例介绍
2013/07/18 HTML / CSS
奢华的意大利皮革手袋:Bene Handbags
2019/10/29 全球购物
工业设计毕业生自荐信
2014/04/13 职场文书
廉洁教育学习材料
2014/05/19 职场文书
会员活动策划方案
2014/08/19 职场文书
农村优秀教师事迹材料
2014/08/27 职场文书
股指期货心得体会
2014/09/13 职场文书
出国导师推荐信
2015/03/25 职场文书
出生证明格式
2015/06/15 职场文书
Grafana可视化监控系统结合SpringBoot使用
2022/04/19 Redis
Python Matplotlib绘制动画的代码详解
2022/05/30 Python