新学JS对象概念小结(摘录于犀牛书第6版)
2013-12-23 12:35
309 查看
对象
对象是将很多原值或者其他对象聚合在一起的复合值。对象的别名:{name1:"散列(hash)",name2:"散列表(hashtable)",name3:"字典(dictionary)",name4:"关联数组(associative array)"}。
JavaScript核心特征:原型式继承。
原型式继承:javascript对象可以从一个称为原型的对象继承属性。
对象特性:
①对象的原型(prototype)指向另一个对象,本对象的属性继承自他的原型对象。
②对象的类(class)是一个标识对象类型的字符串。
③对象的扩展标记(extensible flag)指明了(在ECMAScript 5中)是否可以向该对象添加新属性。
对象的属性
对象是属性的无序集合,属性以名/值方式存在。属性名是字符串,我们可以把对象看成是从字符串到值的映射。
属性特性:
①可写(writable attribute),表明是否可以设置该属性的值。
②可枚举(enumerable attribute),表明是否可以通过for/in循环返回该属性。
③可配置(configurable attribute),表明是否可以删除或修改该属性。
对象小结
Javascript对象是动态的,可以新增属性也可以删除属性,他们常用来模拟静态对象以及静态类语言中的“结构体”(struct)。有时他们也用做字符串的集合(忽略名/值对中的值)。除了字符串、数字、true、false和undefined,JavaScript中的值都是对象。
对象是可变的,我们通过引用而不是值来操作对象。
三类JavaScript对象和两类属性的区分
三类对象:①内置对象(native object)是有ECMAScript规范定义的对象或类。例如,数组、函数、日期和正则表达式都是内置对象。
②宿主对象(host object)是由JavaScript解释器所嵌入的宿主环境(比如Web浏览器)定义的。客户端JavaScript中表示网页结构的HTMLElement对象均是宿主对象。宿主环境定义的方法可以当成普通的JavaScript函数对象,宿主对象也可以当成内置对象。
③自定义对象(user-defined object)是由运行中的JavaScript代码创建的对象。
两类属性:
①自有属性(own property)是直接在对象中定义的属性。
②继承对象(inherited property)是在对象的原型对象中定义的属性。
相关文章推荐
- js创建对象的几种常用方式小结(推荐)
- js的 function, javascript内置对象apply,call,this概念及之间的关系详解
- js关于函数和对象的概念
- js面向对象学习 - 对象概念及创建对象
- 对js的 function.javascript内置对象,this概念及之间的关系不再迷惑
- js学习小结(六)2014.5.2(BOM对象)
- JS中数组与对象的遍历方法实例小结
- js select option对象小结
- js学习小结(十二)2014.5.20(事件冒泡以及事件对象)
- js学习(一)-对象和函数概念
- js select option对象小结
- JavaScript事件学习小结(三)js事件对象
- js对象之JS入门之Array对象操作小结
- js创建对象的几种常用方式小结
- 关于JS中如何获取动态加载的对象小结
- js创建对象的几种常用方式小结(推荐)
- JS对象与JSON互转换、New Function()、 forEach()、DOM事件流等js开发基础小结
- js对象之JS入门之Array对象操作小结
- js操作table对象及页面元素小结
- js 面向对象基本概念