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 相关文章推荐
Mootools 1.2教程(21)——类(二)
Sep 15 Javascript
我遇到的参数传递中 双引号单引号嵌套问题
Feb 11 Javascript
ExtJS GridPanel 根据条件改变字体颜色
Mar 08 Javascript
关于innerHTML后丢失动态绑定的EVENT问题解决方法
May 19 Javascript
JS定时器实例详细分析
Oct 11 Javascript
js中document.write的那点事
Dec 12 Javascript
jQuery获取DOM节点实例分析(2种方式)
Dec 15 Javascript
浅谈JavaScript中的this指针和引用知识
Aug 05 Javascript
vue.js 1.x与2.0中js实时监听input值的变化
Mar 15 Javascript
React router动态加载组件之适配器模式的应用详解
Sep 12 Javascript
vue分页插件的使用方法
Dec 25 Javascript
原生JavaScript写出Tabs标签页的实例代码
Jul 20 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
php调整服务器时间的方法
2015/04/03 PHP
Yii+upload实现AJAX上传图片的方法
2016/07/13 PHP
PHP封装函数实现生成随机的字符串验证码
2017/01/24 PHP
ThinkPHP6.0如何利用自定义验证规则规范的实现登陆
2020/12/16 PHP
JavaScript 判断浏览器类型及版本
2009/02/21 Javascript
JavaScript的类型简单说明
2010/09/03 Javascript
解析页面加载与js函数的执行 onload or ready
2013/12/12 Javascript
javascript 获取网页标题代码实例
2014/01/22 Javascript
JS中操作JSON总结
2020/12/06 Javascript
node.js入门教程迷你书、node.js入门web应用开发完全示例
2014/04/06 Javascript
vuejs如何配置less
2017/04/25 Javascript
JavaScript阻止表单提交方法(附代码)
2017/08/15 Javascript
浅谈angular4实际项目搭建总结
2017/12/01 Javascript
详解VUE自定义组件中用.sync修饰符与v-model的区别
2018/06/26 Javascript
vue.js项目 el-input 组件 监听回车键实现搜索功能示例
2018/08/25 Javascript
浅谈angularJS2中的界面跳转方法
2018/08/31 Javascript
JavaScript基于用户照片姓名生成海报
2020/05/29 Javascript
Element Input输入框的使用方法
2020/07/26 Javascript
[04:04]DOTA2亚洲邀请赛比赛场馆&酒店全攻略
2017/03/23 DOTA
简单了解python模块概念
2018/01/11 Python
python实现给微信指定好友定时发送消息
2019/04/29 Python
python中时间模块的基本使用教程
2019/05/14 Python
python障碍式期权定价公式
2019/07/19 Python
python pip安装包出现:Failed building wheel for xxx错误的解决
2019/12/25 Python
python字符串判断密码强弱
2020/03/18 Python
django rest framework serializer返回时间自动格式化方法
2020/03/31 Python
仿CSDN Blog返回页面顶部功能实现原理及代码
2013/06/30 HTML / CSS
explicit和implicit的含义
2012/11/15 面试题
数学专业推荐信范文
2013/11/21 职场文书
销售员个人求职的自我评价
2014/02/10 职场文书
精彩的广告词
2014/03/19 职场文书
公司法人授权委托书范本
2014/09/12 职场文书
介绍信范文
2015/01/31 职场文书
2015年销售助理工作总结
2015/05/11 职场文书
小学一年级语文教学反思
2016/03/03 职场文书
电脑无法安装Windows 11怎么办?无法安装Win11的解决方法
2021/11/21 数码科技