新学JS对象概念小结(摘录于犀牛书第6版)
来源:互联网 发布:张佳玮 詹姆斯 知乎 编辑:程序博客网 时间:2024/06/04 17:57
对象
对象是将很多原值或者其他对象聚合在一起的复合值。
对象的别名:{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对象概念小结(摘录于犀牛书第6版)
- 犀牛——第6章对象 6.1 创建对象
- js犀牛书
- 犀牛——第6章对象 6.3删除属性
- 犀牛——第6章对象 6.5 枚举属性
- 犀牛——第6章对象6.2属性的查询和设置
- 犀牛——第6章对象 6.7属性的特性
- 犀牛书第1章 JavaScript概述
- 犀牛书第4章 变量(上篇)
- 犀牛书第4章 变量(中篇)
- 新学到的概念
- js犀牛书,学习心得笔记(一)
- 犀牛——第14章 Window对象
- 犀牛书第2章 JavaScript词法结构
- 犀牛书第3章 JavaScript数据类型和值(上篇)
- 犀牛书第3章 数据类型和值(中篇)
- javascript犀牛书学习笔记(一)Window对象
- javascript犀牛书学习笔记(一)Document对象
- [转]进程的创建过程
- 《视频解密》中文版(第四版)第八章 NTSC,PAL和SECAM概述(第三部分)
- Linux epoll使用详解
- HDOJ 1160 FatMouse's Speed(LIS)
- ios数据本地持久化 之 NSUserDefaults,切入后台时保存
- 新学JS对象概念小结(摘录于犀牛书第6版)
- MYSQL性能优化的21条最佳经验
- SeekBar小结
- AVL树(二叉平衡树)笔记
- 判别四位平方数以及floor函数用法
- IE6不支持hover解决方案
- framebuffer驱动开发一
- JAVA深度剖析之JVM的体系结构
- tomcat flex跨域访问的问题