01 面向对象的JavaScript
写在前面 这个系列的文章是通过对《JavaScript设计模式》一书的学习后总结而来,刚开始觉得学习的时候只需看书即可,不用再另外记录笔记了,但是后面发现书中有些内容理解起来并不是很容易,所以结合书中的描述就将自己的理解也梳理了一下并将它记录下来,希望和大家一起学习,文章中如果有我理解错的内容,请各位批评指正,大家共同进步~ 目录 动态类型语言和鸭子类型 多态 封装 原型模式和基于原型继承的JS 内容 动态类型语言和鸭子类型 我们所接触的所有编程语言按照数据类型可以大致分为两类:静态类性语言和动态类型语言。 这两类语言可以通过下面简单的方法来进行区分:在编译时如果已经确定了变量的数据类型,那么它就是静态类性语言;如果变量的数据类型要等到程序运行的时候,给它具体赋予某个值才可以确定,那么它就是动态类型语言。 静态类性语言在程序编译时就已经确定了变量类型,所以它能提前检测出类型不匹配等常见的错误,大大降低了我们编码时的出错率。而且由于我们已经明确了变量的基本类型,所以编译器还能对整体的系统代码做进一步的优化工作,提高程序的执行效率。但是另一方面,静态类型语言要求编译时明确变量数据类型,所以...



