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 相关文章推荐
javascript 复杂的嵌套环境中输出单引号和双引号
May 26 Javascript
基于jquery的一个浮动框(扩展性比较好 )
Aug 27 Javascript
JS简单实现登陆验证附效果图
Nov 19 Javascript
table行随鼠标移动变色示例
May 07 Javascript
javascript表格隔行变色加鼠标移入移出及点击效果的方法
Apr 10 Javascript
js实现温度计时间样式代码分享
Aug 21 Javascript
php利用curl获取远程图片实现方法
Oct 26 Javascript
vue2滚动条加载更多数据实现代码
Jan 10 Javascript
纯js仿淘宝京东商品放大镜功能
Mar 02 Javascript
JavaScript监听手机物理返回键的两种解决方法
Aug 14 Javascript
EasyUI框架 使用Ajax提交注册信息的实现代码
Sep 27 Javascript
html5调用摄像头截图功能
Jan 18 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
探讨:parse url解析URL,返回其组成部分
2013/06/14 PHP
php源码分析之DZX1.5加密解密函数authcode用法
2015/06/17 PHP
doctype后如何获得body.clientHeight的方法
2007/07/11 Javascript
jQuery 浮动广告实现代码
2008/12/25 Javascript
jquery 获取json数据实现代码
2009/04/27 Javascript
改变文件域的样式实现思路同时兼容ie、firefox
2013/10/23 Javascript
js图片向右一张张滚动效果实例代码
2013/11/23 Javascript
jquery滚动特效集锦
2015/06/03 Javascript
js正则表达式验证表单【完整版】
2017/03/06 Javascript
Bootstrap学习笔记之进度条、媒体对象实例详解
2017/03/09 Javascript
angular2模块和共享模块详解
2018/04/08 Javascript
JS 中可以提升幸福度的小技巧(可以识别更多另类写法)
2018/07/28 Javascript
探秘vue-rx 2.0(推荐)
2018/09/21 Javascript
jQuery表单元素过滤选择器用法实例分析
2019/02/20 jQuery
微信小程序textarea层级过高(盖住其他元素)问题的解决办法
2019/03/04 Javascript
微信小程序点击图片实现长按预览、保存、识别带参数二维码、转发等功能
2019/07/20 Javascript
vue点击页面空白处实现保存功能
2019/11/06 Javascript
JavaScript多种滤镜算法实现代码实例
2019/12/10 Javascript
简单谈谈offsetleft、offsetTop和offsetParent
2020/12/04 Javascript
基于Python log 的正确打开方式
2018/04/28 Python
Python爬虫使用浏览器cookies:browsercookie过程解析
2019/10/22 Python
Python定义函数时参数有默认值问题解决
2019/12/19 Python
python轮询机制控制led实例
2020/05/03 Python
python跨文件使用全局变量的实现
2020/11/17 Python
python实现PolynomialFeatures多项式的方法
2021/01/06 Python
HTML5拖放功能_动力节点Java学院整理
2017/07/13 HTML / CSS
欧舒丹澳洲版:L’OCCITANE
2017/07/17 全球购物
高中生校园生活自我评价
2013/09/19 职场文书
《谁的本领大》教后反思
2014/04/25 职场文书
党员贯彻十八大精神思想汇报范文
2014/10/25 职场文书
歌舞青春观后感
2015/06/10 职场文书
大学生读书笔记大全
2015/07/01 职场文书
《纸船和风筝》教学反思
2016/02/18 职场文书
Python趣味实战之手把手教你实现举牌小人生成器
2021/06/07 Python
Android Rxjava3 使用场景详解
2022/04/07 Java/Android
Windows Server 修改远程桌面端口的实现
2022/06/25 Servers