JavaScript中对象介绍


Posted in Javascript onDecember 31, 2014

JavaScript中,除了number、string、boolean、null和undefined,其它所有的值都是对象。对象可以通过字面量来直接声明,也可以通过new操作符来新建。与Java语言不同,JavaScript对象中的property是可以动态添加或者删除的;同时,对象中的property还可以是空字符串:

//properties in object can be added/deleted dynamically

var o = {x:1, y:2};

console.log(o);//Object {x=1, y=2}

delete o.y;

o.z = 3;

console.log(o);//Object {x=1, z=3}
//empty string is allowed as object property

var o2 = {"":88, "p":99};

console.log(o2);//Object { =88, p=99}
//for constructor function, "new" operation returns an object.

function Computer(x, y) {

  this.x = x;

  this.y = y;

}

var c = new Computer(126, 163);

console.log(c);//Computer {x=126, y=163}

var c2 = new Computer(126);//missing parameter value will be "undefined"

console.log(c2);//Computer {x=126, y=undefined}

c.z = 66;

console.log(c);//Computer {x=126, y=163, z=66}

delete c.y;

console.log(c);//Computer {x=126, z=66}

如果在使用new操作符来新建对象时,作用的function并不是一个类的constructor,而仅仅是一个普通的函数,那么JavaScript将在执行该函数后返回一个空对象:

//for pure function, "new" operation returns an empty object.

function compute(x){

  console.log("execute function compute");

  return x*2;

}

var a = new compute();

console.log(a);//compute {}

Object属性

JavaScript中的Object有以下3个属性:

1.prototype。引用,指向Object的原型对象。原型对象中的property可以被Object所继承。
2.class。字符串,表示Object的类名。
3.extensible。boolean值,表示Object中是否允许动态添加property。该属性仅在ECMAScript 5中有效。

Property属性

Object中的Property也有3个属性:

1.writable。该property是否可写。
2.enumerable。当使用for/in语句时,该property是否会被枚举。
3.configurable。该property的属性是否可以修改,property是否可以删除。

Javascript 相关文章推荐
jquery一句话全选/取消全选
Mar 01 Javascript
基于jquery的内容循环滚动小模块(仿新浪微博未登录首页滚动微博显示)
Mar 28 Javascript
js中浮点型运算BUG的解决方法说明
Jan 06 Javascript
javascript异步编程的4种方法
Feb 19 Javascript
浅谈Javascript中的Function与Object
Jan 26 Javascript
js简单实现Select互换数据的方法
Aug 17 Javascript
JavaScript-html标题滚动效果的简单实现
Sep 08 Javascript
Vue.js实现无限加载与分页功能开发
Nov 03 Javascript
微信小程序 POST请求(网络请求)详解及实例代码
Nov 16 Javascript
使用electron将vue-cli项目打包成exe的方法
Sep 29 Javascript
Vue 中文本内容超出规定行数后展开收起的处理的实现方法
Apr 28 Javascript
vue-cli配置flexible过程详解
Jul 04 Javascript
JavaScript中用字面量创建对象介绍
Dec 31 #Javascript
javascript设计模式之中介者模式Mediator
Dec 30 #Javascript
javascript实现window.print()去除页眉页脚
Dec 30 #Javascript
Javascript访问器属性实例分析
Dec 30 #Javascript
Javascript中数组sort和reverse用法分析
Dec 30 #Javascript
jQuery中:visible选择器用法实例
Dec 30 #Javascript
JQuery设置时间段下拉选择实例
Dec 30 #Javascript
You might like
php实现SAE上使用storage上传与下载文件的方法
2015/06/29 PHP
Windows 下安装 swoole 图文教程(php)
2017/06/05 PHP
PHP获取文件扩展名的常用方法小结【五种方式】
2018/04/27 PHP
PHP安装BCMath扩展的方法
2019/02/13 PHP
防止动态加载JavaScript引起的内存泄漏问题
2009/10/08 Javascript
jquery select下拉框操作的一些说明
2010/04/02 Javascript
Javascript弹出窗口的各种方法总结
2013/11/11 Javascript
PHPMyAdmin导入时提示文件大小超出PHP限制的解决方法
2015/03/30 Javascript
JS设置网页图片vspace和hspace属性的方法
2015/04/01 Javascript
js实现的Easy Tabs选项卡用法实例
2015/09/06 Javascript
jQuery代码性能优化的10种方法
2016/06/21 Javascript
对Js OOP编程 创建对象的一些全面理解
2016/07/26 Javascript
前端框架Vue.js构建大型应用浅析
2016/09/12 Javascript
jQuery图片加载显示loading效果
2016/11/04 Javascript
Express结合Webpack的全栈自动刷新
2019/05/23 Javascript
Vue项目实现换肤功能的一种方案分析
2019/08/28 Javascript
layui清除radio的选中状态实例
2019/11/14 Javascript
Nuxt.js的路由跳转操作(页面跳转nuxt-link)
2020/11/06 Javascript
windows 10下安装搭建django1.10.3和Apache2.4的方法
2017/04/05 Python
批量将ppt转换为pdf的Python代码 只要27行!
2018/02/26 Python
Python中max函数用于二维列表的实例
2018/04/03 Python
Python生成器常见问题及解决方案
2020/03/21 Python
Python使用pyexecjs代码案例解析
2020/07/13 Python
Otticanet美国:最顶尖的世界名牌眼镜, 能得到打折季的价格
2019/03/10 全球购物
晚会主持词开场白
2014/03/17 职场文书
蓝颜请假条
2014/04/11 职场文书
医院标语大全
2014/06/23 职场文书
代理人委托书
2014/08/01 职场文书
2014年教务工作总结
2014/12/03 职场文书
2015年出纳年终工作总结
2015/05/14 职场文书
学校工会工作总结2015
2015/05/19 职场文书
2016春季运动会通讯稿
2015/07/18 职场文书
《开国大典》教学反思
2016/02/16 职场文书
人民币使用说明书
2019/04/17 职场文书
Java Dubbo框架知识点梳理
2021/06/26 Java/Android
Java中Dijkstra(迪杰斯特拉)算法
2022/05/20 Java/Android