文档章节

CoffeeScript简介

knightuniverse
 knightuniverse
发布于 2014/01/18 00:07
字数 394
阅读 335
收藏 4
点赞 0
评论 0

CoffeeScript 是什么?

Coffeescript是一门可以编译成javascript的语言。

它的语法设计收到来自于Ruby和Python的启发,并且实现了许多这两门语言的特性。

CoffeeScript编写的代码非常简洁,它使用代码缩进来识别代码块,另外语言层面提供的一些特性,比如class extends mixin map等,都会让你的编码量大幅度下降,比起直接使用javascript来编写代码要优雅很多。

可能你会担心你不能在CoffeeScript引用其他使用js编写的库。不必担心,CoffeeScript并不是js的超集,你大可以在CoffeeScript代码里使用这些库。

实际上,想要使用CoffeeScript,你依然需要理解js。前面也说过了,CoffeeScript最后会编译成为js,代码依然运行在js runtime。debug的时候你需要能够理解引起错误的js代码才行。

正像如今js在nodejs的环境下,可以运行在服务端一样,CoffeeScript也不仅仅只限于运行在浏览器客户端,它一样可以运行在nodejs之上。

快速入门

CoffeeScript提供了两种编译方式,一种是基于浏览器编译的方式,另外一种则是建立在nodejs的基础上。

browser-based

<script src="http://jashkenas.github.com/coffee-script/extras/coffee-script.js" type="text/javascript" charset="utf-8"></script>
<script type="text/coffeescript">
  # Some CoffeeScript
</script>

nodejs-based

npm install -g coffee-script
coffee --compile my-script.coffee

如果nodejs版编译器的--output参数没有指定,默认情况下,代码会被编译成同名文件,文件后缀则会改成.js。

© 著作权归作者所有

共有 人打赏支持
knightuniverse
粉丝 2
博文 39
码字总数 46366
作品 0
厦门
程序员
Atom飞行手册翻译: 3.1 ~ 3.2

现在是时候来介绍在这一Hackable的编辑器中,真正“Hackable”的部分了。像我们在整个第二章中看到的那样,Atom中很大一部分都由一大堆包组成。如果你想向Atom中添加一些功能,你必须要访问和...

apachecn_飞龙 ⋅ 2015/08/03 ⋅ 0

CoffeeScript 2.3.0 发布,JavaScript 转译语言

CoffeeScript 2.3.0 发布,此次更新信息如下: 将分析初始化移入 docs.coffee 更新 CodeMirror 样式 文档更好的布局,包括自动调整大小的侧栏和主栏 对 Edge 的一些样式进行小修改 更新断开的...

雨田桑 ⋅ 04/30 ⋅ 0

CoffeeScript 2.2.4 支持 ES2018 正则表达式 dotall 标志

CoffeeScript 2.2.4 (#5025) 发布。 下载地址 Source code (zip) Source code (tar.gz) 更新 修复#4877:指数运算符(#4881) 支持 ES2018 正则表达式 dotall 标志...

雨田桑 ⋅ 04/01 ⋅ 0

Atom飞行手册翻译: 2.13 基本的自定义

基本的自定义 在我们感受到Atom中所有东西的便利之后,让我们看看如何改进它。可能有一些快捷键你经常使用但是感觉很别扭,或者一些颜色不是十分适合你。Atom具有惊人的灵活性,所以让我们对...

apachecn_飞龙 ⋅ 2015/08/03 ⋅ 0

此生无悔入 TypeScript

↑ 编者按:本文由phodal公众号授权奇舞周刊转载。 想来,我已经用 TypeScript 已经有一段时间了,它可以算得上是前端领域的一门 “平淡生活” 的语言。 平淡生活,我的意思是:生活可以从此...

奇舞周刊 ⋅ 04/26 ⋅ 0

java Web中的接口项目:浏览器访问接口地址后返回的是一串加密后的字符串,控制台显示:请求包为空,如何解决才能看到接口中显示的json数据信息?数据转换使用des进行加密和解密的。谢谢

java Web中的接口项目:浏览器访问接口地址后返回的是一串加密后的字符串,控制台显示:请求包为空,如何解决才能看到接口中显示的json数据信息?数据转换使用des进行加密和解密的。谢谢...

llddgg ⋅ 02/28 ⋅ 0

【CentOS 7Tomcat配置3】,配置tomcat监听端口为80#180120

hellopasswd --- 配置tomcat监听端口为80 vi /usr/local/tomcat/conf/server.xml Connector port="8080" protocol="HTTP/1.1"修改Connector port="80" protocol="HTTP/1.1" /usr/local/tomc......

hellopasswd ⋅ 01/20 ⋅ 0

世界AI人才储备战硝烟四起,中国能否抢占少儿编程先机?

在人工智能的发展过程中,人才储备无疑是重要的一环。人工智能应是一种可以深埋于任何产业中的底层技术,与医疗结合可以提升影像资料的检阅效率,与工业结合可以提升分拣速度……在未来,或许...

脑极体 ⋅ 04/18 ⋅ 0

Git push 常用命令

git push : 这个是push的完整写法,将本地分支上传到远程分支,例如: git push 如果省略了 即: 则git会push到远程分支的同名本地分支,即和 等价。如果远程分支dev不存在则会创建dev分支。...

hobhunter ⋅ 03/06 ⋅ 0

一次与陌生男子结对编程3天的经历

最近,公司的事情越发忙碌起来了,除了需要不断梳理架构团队的规划和进度之外,还要经常北上杭三地跑,平常好不容易有个完整的周末,也都瘫软在沙发上,一动脑就脑壳痛。感觉这种状态很容易让...

小芋头君 ⋅ 05/27 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Day 17 vim简介与一般模式介绍

vim简介 vi和Vim的最大区别就是编辑一个文件时vi不会显示颜色,而Vim会显示颜色。显示颜色更便于用户编辑,凄然功能没有太大的区别 使用 yum install -y vim-enhanced 安装 vim的三种常用模式...

杉下 ⋅ 41分钟前 ⋅ 0

【每天一个JQuery特效】根据可见状态确定是否显示或隐藏元素(3)

效果图示: 主要代码: <!DOCTYPE html><html><head><meta charset="UTF-8"><title>根据可见状态确定 是否显示或隐藏元素</title><script src="js/jquery-3.3.1.min.js" ty......

Rhymo-Wu ⋅ 51分钟前 ⋅ 0

OSChina 周四乱弹 —— 初中我身体就已经垮了,不知道为什么

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @加油东溪少年 :下完这场雨 后弦 《下完这场雨》- 后弦 手机党少年们想听歌,请使劲儿戳(这里) @马丁的代码 :买了日本 日本果然赢了 翻了...

小小编辑 ⋅ 今天 ⋅ 10

浅谈springboot Web模式下的线程安全问题

我们在@RestController下,一般都是@AutoWired一些Service,由于这些Service都是单例,所以并不存在线程安全问题。 由于Controller本身是单例模式 (非线程安全的), 这意味着每个request过来,...

算法之名 ⋅ 今天 ⋅ 0

知乎Java数据结构

作者:匿名用户 链接:https://www.zhihu.com/question/35947829/answer/66113038 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 感觉知乎上嘲讽题主简...

颖伙虫 ⋅ 今天 ⋅ 0

Confluence 6 恢复一个站点有关使用站点导出为备份的说明

推荐使用生产备份策略。我们推荐你针对你的生产环境中使用的 Confluence 参考 Production Backup Strategy 页面中的内容进行备份和恢复(这个需要你备份你的数据库和 home 目录)。XML 导出备...

honeymose ⋅ 今天 ⋅ 0

JavaScript零基础入门——(九)JavaScript的函数

JavaScript零基础入门——(九)JavaScript的函数 欢迎回到我们的JavaScript零基础入门,上一节课我们了解了有关JS中数组的相关知识点,不知道大家有没有自己去敲一敲,消化一下?这一节课,...

JandenMa ⋅ 今天 ⋅ 0

火狐浏览器各版本下载及插件httprequest

各版本下载地址:http://ftp.mozilla.org/pub/mozilla.org//firefox/releases/ httprequest插件截至57版本可用

xiaoge2016 ⋅ 今天 ⋅ 0

Docker系列教程28-实战:使用Docker Compose运行ELK

原文:http://www.itmuch.com/docker/28-docker-compose-in-action-elk/,转载请说明出处。 ElasticSearch【存储】 Logtash【日志聚合器】 Kibana【界面】 答案: version: '2'services: ...

周立_ITMuch ⋅ 今天 ⋅ 0

使用快嘉sdkg极速搭建接口模拟系统

在具体项目研发过程中,一旦前后端双方约定好接口,前端和app同事就会希望后台同事可以尽快提供可供对接的接口方便调试,而对后台同事来说定好接口还仅是个开始、设计流程,实现业务逻辑,编...

fastjrun ⋅ 今天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部