String check with if js shorthand
我有var names = [];,我只想在不空的情况下把一些字符串推到那里。在JS中有没有一些速记方法?
我现在拥有的。
1 2 3 4
| if ("" != opportunityName)
{
names.push(opportunityName);
} |
这对我来说不合适,这是推空绳子。
1
| names.push(opportunityName ||""); |
可以使用短路:
1
| opportunityName && names.push(opportunityName); |
只有当左边的操作数是真的时,才计算右边的操作数。
- 太简单了=)
- 它可以工作,但它几乎比if (opportunityName) names.push(...);短,而且可读性较差…
- @Larsh,如果使用代码样式强制使用大括号,则要短一些;如果添加新行,则要短一些。我个人总是使用花括号,所以像这样的短的一行有时正是我需要的。
- @时间游牧:一个有效的观点,在实践中…这种编码方式并不少见。不过,我想说的是,如果编码样式对if的"then"子句使用大括号,那么为了保持一致,它应该在右边表达式周围使用括号,其中&&只用于短路:opportunityName && (names.push(opportunityName))。但是,我没有看到强制使用后者的编码样式。