深入理解JavaScript
对 JavaScript 的介绍都是说他是基于对象的编程语⾔,⽽从没有哪本书会说 JavaScript 是⼀门⾯向对象的编程语⾔。基于对象很好理解,毕竟在 JavaScript 中⼀切都是对象,我们随时可以使⽤点号操作符来调 某个对象的⽅法。但是⼗多年前,我们编写 JavaScript 程序时,都是像 C 语⾔那样使⽤函数来组织我们的程序的,只有在论坛的某个 落中,有少数的⾼⼿会偶尔提到你可以通过修改某个对象的prototype来让你的函数达到更 层次的复⽤,直到 Flash 的 ActionScript 出现时,才有⼈系统介绍基于原型的继承。⼗余年后的现在,使⽤JavaScript 的原型链和闭包来模拟经典的⾯向对象程序设计已经是 为流传的⽅案,所以,说 JavaScript 是⼀门⾯向对象的编程语⾔也丝毫不为过。