CoffeeScript 教程

🌙
手机阅读
本文目录结构

CoffeeScript

CoffeeScript 是一套 JavaScript 的转译语言。受到 Ruby、Python 与 Haskell 等语言的启发,CoffeeScript 增强了 JavaScript 的简洁性与可读性。

此外,CoffeeScript 也新增了更复杂的功能,例如列表内涵、模式匹配等。

一般来说,CoffeeScript 可以在不影响运行性能的情况下,缩短约三分之一的代码长度。自从 2011 年 6 月以来,CoffeeScript 已经是 GitHub 上最受瞩目的项目之一。

适用人群

本书着重讲解了 CoffeeScript 的基础语法,适合初学者。

学习前,你需要了解 JavaScript 这门语言,应为 CoffeeScript 是建立在此基础上的。

如果您还没有学过 CoffeeScript ,那么推荐你学习 TypeScript 教程,这个更加优秀!

语法

许多 JavaScript 的陈述句皆可在 CoffeeScript 中视为表达式。

例如,if, switch 与 for 等。这些控制陈述句也有后缀的版本。

CoffeeScript 的一般原则,是可以省略许多不必要的括号和大括号,可以使用缩进来取代。

可以以隐喻方式调用函数(在 JavaScript 中调用函数所需的括号可以被省略),对象文字通常可以自动侦测。

示例

一个使用 jQuery 的普通 JavaScript 代码如下:

$(document).ready(function() {
  // 這裡是初始化的程式碼
});

或可以更省略:

$(function() {
  // 這裡是初始化的程式碼
});

在 CoffeeScript 里,function 关键字可用 ->符号来取代,结尾的分号也可用缩进来表示,如同 Python、Haskell 等缩进语言的越位规则一样。此外,大括号通常也可以省略。因此上述的代码在 CoffeeScript 中可写成如下的形式。

$(document).ready ->
  # 這裡是初始化的程式碼

($ document).ready ->
  # 這裡是初始化的程式碼

又或者

$ ->
  # 這裡是初始化的程式碼

编译

CoffeeScript 的编译器在 0.5 版本之后由 CoffeeScript 本身写成,为 Node.js 里的一个工具程序。但核心代码并不依赖 Node.js,且可直接在任何支持 JavaScript 的环境中使用。

此外,可以使用 Coffee Maven Plugin 作为 Node.js 之外的替代方案,这是 Apache Maven 建置工具的外挂,由 Rhino JavaScript 引擎并以 Java 语言写成。

在 CoffeeScript.org 官方网站的菜单上有“Try CoffeeScript”按钮,可以让用户直接输入 CoffeeScript 代码并直接在浏览器上编译成 JavaScript。

另外一个网站“jscoffee”提供双向转译的功能。

AXIHE / 精选资源

浏览全部教程

面试题

学习网站

前端培训
自己甄别

前端书籍

关于朱安邦

我叫 朱安邦,阿西河的站长,在杭州。

以前是一名平面设计师,后来开始接接触前端开发,主要研究前端技术中的JS方向。

业余时间我喜欢分享和交流自己的技术,欢迎大家关注我的 Bilibili

关注我: Github / 知乎

于2021年离开前端领域,目前重心放在研究区块链上面了

我叫朱安邦,阿西河的站长

目前在杭州从事区块链周边的开发工作,机械专业,以前从事平面设计工作。

2014年底脱产在老家自学6个月的前端技术,自学期间几乎从未出过家门,最终找到了满意的前端工作。更多>

于2021年离开前端领域,目前从事区块链方面工作了