JavaScript权威指南(第6版) 8.8分
读书笔记 对象
盛昂

JavaScript对象的特性和对象属性的特性

JavaScript中的对象其实是一种存储结构(的实现),在使用上最直接的就是键值对的集合,另外还提供了一些“辅助性功能”(即对象特性和对象的属性特性)。 一般地,需要首先了解JavaScript中“对象”的功能,另一方面需要了解如何运用“面向对象的编程”。 本文为《JavaScript权威指南》中相关内容的归纳总结。

JavaScript中对象的功能 (第六章 118页)

  • 属性的特性
    • 依据“权威指南”中将属性的值看做属性的特性,属性的特性包括:
      • 值(value) -有两个特别的值需要注意,那就是getter与setter;其用法“权威指南”根本没说明白,请参考MDN的解释
      • 可写性(writable) 很简单,如果为false就不能再擦写(赋值不会报错,但是没效果)
      • 可枚举性(enumberable) 在for(el in O)的时候可否被举出(还影响到 Object.keys JSON.stringify)
      • 可配置性(configurable) 就是能否通过Obeject.defineProperty再次更改这些属性特性(值、可写、可枚举、可配置),false就是不能更改了。
    • 通过Object.getOwnPropertyDescriptor获取某个对象的某个自有属性(不能获取原型的)的属性特性描述。
    • 通过Object.defineProperty对某个对象的某个自由属性进行属性特性的设置。
  • 对象的特性
    • 对象具有三个特性:
      • 原型(prototype) 通过Object.getPrototypeof或者.constrctor.prototype来查询一个对象的原型
      • 类(class) 用.toString方法获得
      • 可扩展性 可否给对象添加属性。Pbejct.preventExtensions阻止对象扩展属性; Obejct.seal甚至让对象的属性都不能扩展其属性

JavaScript中对象的运用(第九章 201页)

  • 继承 继承是指让数据间具有这么一种关联结构:一个对象具有指定的原型,当访问这个对象的某个属性的时候,会首先寻找这个对象自身是否拥有这个名字的属性,假如没有的话,就去寻找这个对象的原型,看看原型有没有这个名字的属性,依次类推; JavaScript中通过构造函数生对象成并为其指定原型,“new 构造函数” 的处理步骤是:先创建一个空对象;为这个空对象指定原型,为构造函数的.prototype值;执行构造函数里的语句,并且此刻这些语句的空间作用域是这个空对象,也就是此刻的this指向的是这个空对象。 “权威指南”里将原型作为“类”,这里略去介绍。
  • 通过对象属性特性和对象特性来使对象模块化

2019/1/3 23:42:34 2018/12/31 14:07:40

0
《JavaScript权威指南(第6版)》的全部笔记 135篇
豆瓣
免费下载 iOS / Android 版客户端