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 相关文章推荐
新浪的图片新闻效果
Jan 13 Javascript
用于判断用户注册时,密码强度的JS代码
Jan 01 Javascript
FileUpload 控件 禁止手动输入或粘贴的实现代码
Apr 07 Javascript
JavaScript中的null和undefined解析
Apr 14 Javascript
从jquery的过滤器.filter()方法想到的
Sep 29 Javascript
基于JQuery实现滚动到页面底端时自动加载更多信息
Jan 31 Javascript
js清理Word格式示例代码
Feb 13 Javascript
jQuery模仿京东/天猫商品左侧分类导航菜单效果
Jun 29 Javascript
JS控制FileUpload的上传文件类型实例代码
Oct 07 Javascript
JS异步文件上传(兼容IE8+)
Apr 02 Javascript
关于JavaScript中高阶函数的魅力详解
Sep 07 Javascript
详解vue3.0 的 Composition API 的一种使用方法
Oct 26 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
ThinkPHP3.1新特性之查询条件预处理简介
2014/06/19 PHP
PHP版本升级到7.x后wordpress的一些修改及wordpress技巧
2015/12/25 PHP
php实现概率性随机抽奖代码
2016/01/02 PHP
[原创]站长必须要知道的javascript广告代码
2007/05/30 Javascript
window.returnValue使用方法示例介绍
2014/07/03 Javascript
原生js实现模拟滚动条
2015/06/15 Javascript
jquery结婚电子请柬特效源码分享
2015/08/21 Javascript
浅谈jQuery before和insertBefore的区别
2016/12/04 Javascript
利用js的闭包原理做对象封装及调用方法
2017/04/07 Javascript
微信小程序之几种常见的弹框提示信息实现详解
2019/07/11 Javascript
js实现无限瀑布流实例方法
2019/09/16 Javascript
Vue实现按钮级权限方案
2019/11/21 Javascript
React生命周期原理与用法踩坑笔记
2020/04/28 Javascript
在Echarts图中给坐标轴加一个标识线markLine
2020/07/20 Javascript
[01:25]DOTA2超级联赛专访iG 将调整状态找回自己
2013/06/05 DOTA
[01:07:57]DOTA2-DPC中国联赛 正赛 Ehome vs Magma BO3 第二场 1月19日
2021/03/11 DOTA
numpy中索引和切片详解
2017/12/15 Python
Python语言描述机器学习之Logistic回归算法
2017/12/21 Python
Django进阶之CSRF的解决
2018/08/01 Python
python3+requests接口自动化session操作方法
2018/10/13 Python
在Python中获取操作系统的进程信息
2019/08/27 Python
Python 实现文件读写、坐标寻址、查找替换功能
2019/09/11 Python
python同时替换多个字符串方法示例
2019/09/17 Python
Python基于pyjnius库实现访问java类
2020/07/31 Python
使用javascript和HTML5 Canvas画的四渐变色播放按钮效果
2014/04/10 HTML / CSS
eDreams巴西:廉价机票,酒店优惠和度假套餐
2017/04/14 全球购物
迅雷Cued工作心得体会
2014/01/27 职场文书
财务总经理岗位职责
2014/02/16 职场文书
校园歌咏比赛主持词
2014/03/18 职场文书
文案策划求职信
2014/03/18 职场文书
总经理任命书范本
2014/06/05 职场文书
学校清明节活动总结
2014/07/04 职场文书
小学国庆节活动方案策划书
2014/09/16 职场文书
出国签证在职证明范本
2014/11/24 职场文书
详解Django的MVT设计模式
2021/04/29 Python
Redis实现订单自动过期功能的示例代码
2021/05/08 Redis