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实现的元素的left增加N像素 鼠标移开会慢慢的移动到原来的位置
Mar 21 Javascript
Jquery replace 字符替换实现代码
Dec 02 Javascript
jQuery之网页换肤实现代码
Apr 30 Javascript
jquery创建并行对象或者合并对象的实现代码
Oct 10 Javascript
js中定义一个变量并判断其是否为空的方法
May 13 Javascript
javascript面向对象之访问对象属性的两种方式分析
Jan 13 Javascript
JS简单模拟触发按钮点击功能的方法
Nov 30 Javascript
JS实现京东首页之页面顶部、Logo和搜索框功能
Jan 12 Javascript
webpack构建react多页面应用详解
Sep 15 Javascript
浅谈在vue中用webpack打包之后运行文件的问题以及相关配置方法
Feb 21 Javascript
Node.js设置定时任务之node-schedule模块的使用详解
Apr 28 Javascript
Vue作用域插槽实现方法及作用详解
Jul 08 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新手上路(四)
2006/10/09 PHP
Base64在线编码解码实现代码 演示与下载
2011/01/08 PHP
php函数之子字符串替换 str_replace
2011/03/23 PHP
php输出xml必须header的解决方法
2014/10/17 PHP
php微信开发之图片回复功能
2018/06/14 PHP
Js之软键盘实现(js源码)
2007/01/30 Javascript
jQuery 扩展对input的一些操作方法
2009/10/30 Javascript
Javascript基础教程之数据类型 (数值 Number)
2015/01/18 Javascript
jQuery操作JSON的CRUD用法实例
2015/02/25 Javascript
jQuery中的select操作详解
2016/11/29 Javascript
jquery PrintArea 实现票据的套打功能(代码)
2017/03/17 Javascript
详解angularJS自定义指令间的相互交互
2017/07/05 Javascript
[01:01:24]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第三局
2016/02/25 DOTA
[01:07:15]DOTA2-DPC中国联赛 正赛 DLG vs XG BO3 第二场 1月25日
2021/03/11 DOTA
用Python给文本创立向量空间模型的教程
2015/04/23 Python
Python使用bs4获取58同城城市分类的方法
2015/07/08 Python
python实现壁纸批量下载代码实例
2018/01/25 Python
Python中Numpy包的安装与使用方法简明教程
2018/07/03 Python
python 多线程重启方法
2019/02/18 Python
html5 application cache遇到的严重问题
2012/12/26 HTML / CSS
使用jquery实现HTML5响应式导航菜单教程
2014/04/02 HTML / CSS
详解移动端html5页面长按实现高亮全选文本内容的兼容解决方案
2016/12/03 HTML / CSS
雅高酒店中国:Accorhotels.com China
2018/03/26 全球购物
Pretty You London官网:英国拖鞋和睡衣品牌
2019/05/08 全球购物
美国珠宝精品店:Opulent Jewelers
2019/08/20 全球购物
欧姆龙医疗保健与医疗产品:Omron Healthcare
2020/02/10 全球购物
初中毕业生的自我评价
2014/03/03 职场文书
同居协议书范本
2014/04/23 职场文书
工厂搬迁方案
2014/05/11 职场文书
2015年少先队活动总结
2015/03/25 职场文书
2016国庆节67周年寄语
2015/12/07 职场文书
农村房屋租赁合同(范本)
2019/07/23 职场文书
关于感恩的歌曲整理(8首)
2019/08/14 职场文书
Java数组与堆栈相关知识总结
2021/06/29 Java/Android
python的html标准库
2022/04/29 Python
MySQL 原理优化之Group By的优化技巧
2022/08/14 MySQL