CoffeeScript

更新日期: 2017-05-11 阅读次数: 6815 分类: Javascript

Wiki

https://github.com/jashkenas/coffee-script/wiki

Help

$ coffee -h

sleep

delay = (ms, func) -> setTimeout func, ms

$(document).ready -> 
  delay 1000, -> alert "Hello world!" 

函数的定义及调用需要注意的地方

  • 调用时,括号可有可无。但是为了方便阅读,还是加上为好
  • 函数中的最后一行默认为 return 的值。为了方便阅读,还是显式的加上为好
  • 函数的定义可以采用一行流。为了阅读方便,还是将 body 部分换行写为好

将多个文件压缩成一个文件

例如,coffeescript 里引用了 jQuery,而生成的 javascript 需要在 Greasemonkey 里 运行,但是我又不想使用 Google CDN 的 jQuery 引用,防止随时被墙。

这时就需要将 coffeescript 生成的 javascript 代码同 jQuery 集成到一个文件中。 具体分两步:

  • 将 coffeescript 代码 compile 成 javascript 代码
  • 将生成的 js 代码同 jQuery 代码集成到一个文件

例如:

$ coffee --compile my_code.coffee
$ cat jquery-1.9.1.js my_code.js > one_file.tamper.js

tips:

调试阶段还是使用引用的方式比较好,因为方便找到出错的代码行号。 最后部署时候再进行集成。

参考:

  • http://stackoverflow.com/questions/1051977/combining-multiple-js-files-into-one-in-a-build-process

字符串类型转换为整型

var home_team_score = parseInt(scores[0], 10)

实际上利用的是 javascript 的函数 parseInt. 这个实例说明,coffeescript 就是 javascript 的一层封装。

参考:

  • http://stackoverflow.com/questions/10720878/coffeescript-how-do-i-convert-a-string-to-a-number

关于作者 🌱

我是来自山东烟台的一名开发者,有敢兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式