CoffeeScript系列教程(三)—声明
来源:互联网 发布:windows光盘映像刻录机 编辑:程序博客网 时间:2024/05/22 00:33
CoffeeScript的声明很简单,如下:
### 编译前###name = 'xxx' #名称age = 10 #年龄 /* 编译后 */var age, name;name = 'xxx';age = 10;
CoffeeScript的单行注释是#,多行注释是###,看上面就知道了。观察代码大家可以发现:
- CoffeeScript的声明不需要关键字var去声明,编译后的代码会帮你加声明。如果你硬加上var会报错,编译失败
- 不需要使用分号去关闭表达式,编译后的代码会帮你加上分号。但是加上分号编译也能通过,但是最好别这么干。
下面我们来看看数组和对象的声明。
#编译前array = [1, 2, 3, 4, 5, 6]obj = name: 'xxx' age: 10//编译后 var array, obj;array = [1, 2, 3, 4, 5, 6];obj = { name: 'xxx', age: 10};数组的声明和JavaScript一模一样(除了少了个关键字var和结尾的分号),值得一提的是在CoffeeScript里面数组还有种声明写法:
#编译前array = [ 1, 2, 3 4, 5, 6]//编译后var array;array = [1, 2, 3, 4, 5, 6];
大家可以看到数组里的元素换行了可以省掉分号不写。建议不要这么写,看起来好像二维数组,容易造成误解。
观察对象的声明发现少了花括号{},CoffeeScript里面的代码块都不需要花括号{}来包裹,而是通过换行和缩进来控制的。比如:
#编译前obj = name: 'xxx' age: 10 obj1: name: 'yyy' age: 20//编译后var obj;obj = { name: 'xxx', age: 10, obj1: { name: 'yyy', age: 20 }};
name、age、obj1都缩进了,所以编译后成功都在{}内部。至于缩进多少都没有关系(一个字符、甚至任意字符都可以),但是有一点得记住,保持统一的缩进风格,不要有些地方缩进一个字符,有些地方又缩进两个字符。就拿上面的例子来说,代码都是缩进两个字符的,如果你obj1缩进一个字符编译就会失败,因为没办法解析。要保持编码的统一风格。
0 0
- CoffeeScript系列教程(三)—声明
- CoffeeScript系列教程(一)—概述
- COFFEESCRIPT系列教程(四)—函数
- CoffeeScript系列教程(二)—安装和使用
- CoffeeScript系列教程(五)—作用域
- CoffeeScript系列教程(七)—循环和推导式
- CoffeeScript系列教程(六)—IF, ELSE, UNLESS 和条件赋值
- 数据结构系列教程(三)
- MySQL系列教程(三)
- 学习Struts框架系列(三):声明式异常处理
- kylin系列教程(三)——访问方式
- Csharp+Asp.net系列教程(三)
- JDBC系列教程(三)---语句
- JDBC系列教程(三)---语句
- PowerDesigner教程系列(三)概念数据模型
- PowerDesigner教程系列(三)概念数据模型
- PowerDesigner教程系列(三)概念数据模型
- Csharp+Asp.net系列教程(三)
- leetcode 84. Largest Rectangle in Histogram
- 深入研究memcache 特性和限制
- django集成DjangoUeditor
- onvif测试工具使用方法
- 正则验证注册登录
- CoffeeScript系列教程(三)—声明
- Vertica的这些事<十三>—— Vertica停止数据库的操作步骤
- 一种基于Qt的可伸缩的全异步C/S架构服务器实现(一) 综述
- [LeetCode] 160. Intersection of Two Linked Lists
- 【华为练习题】大数阶乘
- do .....while(0)的用处
- scala 回溯法解决八皇后问题
- 快速用梯度下降法实现一个Logistic Regression 分类器
- Spring Ioc容器依赖注入