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 相关文章推荐
ajax异步刷新实现更新数据库
Dec 03 Javascript
Jquery实现Div上下移动示例
Apr 23 Javascript
JavaScript中诡异的delete操作符
Mar 12 Javascript
jQuery替换textarea中换行的方法
Jun 10 Javascript
深入浅析javascript立即执行函数
Oct 23 Javascript
jQuery soColorPacker 网页拾色器
Jun 22 Javascript
js时间戳与日期格式之间转换详解
Dec 11 Javascript
新手快速上手webpack4打包工具的使用详解
Jan 28 Javascript
从组件封装看Vue的作用域插槽的实现
Feb 12 Javascript
小程序:授权、登录、session_key、unionId的详解
May 15 Javascript
关于layui flow loading占位图的实现方法
Sep 21 Javascript
JS实现简单的表格增删
Jan 16 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编程最快明白》第四讲:日期、表单接收、session、cookie
2010/11/01 PHP
PIGCMS 如何关闭聊天机器人
2015/02/12 PHP
CodeIgniter读写分离实现方法详解
2016/01/20 PHP
浅谈php fopen下载远程文件的函数
2016/11/18 PHP
js 实现无缝滚动 兼容IE和FF
2009/07/15 Javascript
基于jQuery的让非HTML5浏览器支持placeholder属性的代码
2011/05/24 Javascript
瀑布流布局代码一例
2014/04/11 Javascript
JavaScript fontsize方法入门实例(按照指定的尺寸来显示字符串)
2014/10/17 Javascript
使用angularjs创建简单表格
2016/01/21 Javascript
AngularJS入门教程之ng-checked 指令详解
2016/08/01 Javascript
iOS和Android用同一个二维码实现跳转下载链接的方法
2016/09/28 Javascript
详释JavaScript执行环境与执行栈
2019/04/02 Javascript
tsconfig.json配置详解
2019/05/17 Javascript
基于ts的动态接口数据配置的详解
2019/12/18 Javascript
javascript实现简易的计算器
2020/01/17 Javascript
node.js中 redis 的安装和基本操作示例
2020/02/10 Javascript
js实现头像上传并且可预览提交
2020/12/25 Javascript
Python时区设置方法与pytz查询时区教程
2013/11/27 Python
Windows下python2.7.8安装图文教程
2016/05/26 Python
举例讲解Python中metaclass元类的创建与使用
2016/06/30 Python
Python的爬虫程序编写框架Scrapy入门学习教程
2016/07/02 Python
浅谈机器学习需要的了解的十大算法
2017/12/15 Python
Python实现的径向基(RBF)神经网络示例
2018/02/06 Python
对python中的 os.mkdir和os.mkdirs详解
2018/10/16 Python
Python3内置模块之json编解码方法小结【推荐】
2020/12/09 Python
Python实现微信中找回好友、群聊用户撤回的消息功能示例
2019/08/23 Python
python3中numpy函数tile的用法详解
2019/12/04 Python
使用 Python 遍历目录树的方法
2020/02/29 Python
大学军训通讯稿
2014/01/13 职场文书
花坛标语大全
2014/06/30 职场文书
医德考评自我评价
2014/09/14 职场文书
文员试用期转正自我鉴定
2014/09/14 职场文书
2015年食品安全宣传周活动总结
2015/07/09 职场文书
2016大学生暑期社会实践心得体会
2016/01/14 职场文书
小学2016年第十八届推普周活动总结
2016/04/05 职场文书
Python IO文件管理的具体使用
2022/03/20 Python