我习惯使用 if else 简写:
var = (if 语句) ? '东西' : '别的东西';
有没有其他可用的速记方法?
不确定这是否符合您的要求,但这也有效:
var myVar:String = someStrThatMightBeNull || "default value if that other value is null";
因此,如果赋值运算符右侧的第一个值为 null/未定义,它将使用文字字符串。
var myArray:Array = new Array();
可以替换为:
var myArray:Array = [];
对象也是如此:
var myObj:Object = new Object();
可以替换为:
var myObj:Object = {};
x ||= 5; // set x to 5 if x evaluates to false
x || someMethod(); // call someMethod if x evaluates to false
x && someMethod(); // call someMethod if x evaluates to true
严格来说,这不是 if/else 语句的简写。这是一个称为条件运算符的三元运算符。
请注意,虽然它们做同样的事情,但它们的读法不同:
// if the condition is true, we do something... maybe many things
if (condition) {
var = 'something';
} else {
var = 'something else';
}
// reads more clearly as an assignment based upon a condition
var = (condition) ? 'something' : 'something else';
在许多情况下,可以将其视为速记。随着时间的推移,你的大脑会本能地选择合适的条件运算符;但是当您刚刚开始涉足时,您会发现条件运算符是更简洁地表达代码的好方法。