CoffeeScript系列教程(六)—IF, ELSE, UNLESS 和条件赋值
2016-09-13 12:19
381 查看
if/else就是简单的条件语句,因为CoffeeScript里的代码块使用缩进来区分的,所以在写if/else语句的时候要注意缩进的处理哦。废话不多说,看例子:
#编译前
if a
doa()
else if b
dob()
else
doc()
//编译后
if (a) {
doa();
} else if (b) {
dob();
} else {
doc();
}
如果只是这样简单,那你就错了,CoffeeScript还支持if/unless后置写法,如下:
#编译前
oper() if a
oper() unless a
//编译后
if (a) {
oper();
}
if (!a) {
oper();
}
看代码相信大家也能区分if/unless的区别了,呵呵!
注意:if/unless后置的写法,只支持单操作,什么意思呢?看代码:
后置的写法前面只能有一个表达式,如果你想进行复杂的处理的话,比如oper1处理完后,在处理oper2,那你不能采用后置的写法。后置的写法只适合单一处理的情况。
本人最爱的三目运算符也变成如下的写法了。
#编译前
if a
doa()
else if b
dob()
else
doc()
//编译后
if (a) {
doa();
} else if (b) {
dob();
} else {
doc();
}
如果只是这样简单,那你就错了,CoffeeScript还支持if/unless后置写法,如下:
#编译前
oper() if a
oper() unless a
//编译后
if (a) {
oper();
}
if (!a) {
oper();
}
看代码相信大家也能区分if/unless的区别了,呵呵!
注意:if/unless后置的写法,只支持单操作,什么意思呢?看代码:
#编译前 if a oper1() oper2() oper1() if a //编译后 if (a) { oper1(); oper2(); } if (a) { oper1(); }
后置的写法前面只能有一个表达式,如果你想进行复杂的处理的话,比如oper1处理完后,在处理oper2,那你不能采用后置的写法。后置的写法只适合单一处理的情况。
本人最爱的三目运算符也变成如下的写法了。
#编译前 date = if friday then sue else jill //编译后 date = friday ? sue : jill;
相关文章推荐
- Golang初级系列教程-控制结构-ifelse
- C#系列教程——if-else例子2
- Java自学之路-Java基础教程-11:Java基本语句之1-条件控制语句if和else
- Linux Shell系列教程之(九)Shell判断 if else 用法
- 微信小程序之wx:if视图层的条件渲染 —— 微信小程序教程系列(10)
- Linux Shell系列教程之(九)Shell判断 if else 用法
- 每天学习一算法系列(12) (求1+2+…+n,不能使用乘除法,for、while、if 、else、switch、case 等关键字以及条件判断语句)
- C#系列教程——if-else定义及使用
- as3菜鸟教程if-else语句实现按钮的控制播放和暂停
- Exchange server 2010系列教程之一 安装Exchange 2010准备条件
- 【练习】题目:求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case 等关键字以及条件判断语句
- js利用与或运算符优先级实现if else条件判断表达式
- ActionScript 3.0 Step By Step系列(三):学学流程控制,编编if-else & switch & while & for
- 条件分支结构(switch-case)(if-else if-else) 2011.05.09
- 《WF编程》系列之23 - 基本活动:IfElseActivity & WhileActivity & SequenceActivity
- ActionScript 3.0 Step By Step系列(三):学学流程控制,编编if-else & switch & while & for
- C#条件判断-if...else结构
- 也说条件编译 #if #else #endif && Conditional Attribute
- if else条件语句和条件(三目)运算符的应用场合
- 3DGS脚本教程翻译(12)-If - Else 语法