CoffeeScript 继承的学习笔记

首先得坦白,我接触 JavaScript 仅一年,并一直依赖 jQuery

在这 Node.js 流行的年代, JS 不能只被用作为工具 ,而是作为主开发语言,这对我(或许是你)来说其实是坏消息,因为 JS 好另类,要钻研各种黑魔法才能掌握。

所幸的是 TeambitionCoffeeScript 来写 JS 代码,节省了钻研黑魔法的时间。在 CoffeeScript vs. ECMAScript 6 幻灯片中证明了 CS 是优秀的,因此被 ES6 借鉴了很多东西过去~

coffeesscript-with-es6

上面一段表明我对 CS 的喜爱,因为它是这样写继承的:

转译后的代码:

在看上面两段代码之前,需要先了解 new,this,prototype,constructor。
我收集了几篇需要关联阅读的文章,帮助不了解的人快速入门:

相信 CS 写的那段代码对照文档都能看懂,太像传统的动态语言继承了。
但转译后的代码就令人感到一头雾水,会发现有一个叫 extend 的函数。

extend 这个函数在 closure 里面执行,然后再返回继承后的 class。

搞懂以后发现概念与原理没有那么难,但离实际使用(什么时候用,怎么复用)还有一段距离,所以继续加油咯 : )