coffeescript为何没有三元运算

发布于 2022-08-29 20:36:19 字数 82 浏览 19 评论 0

既然是为了简便为什么设计需要去掉这种明显更简单的写法,而非要用if ... then ... else ...来表示呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

︶ ̄淡然 2022-09-05 20:36:19

在Coffee的GitHub issues里可以找到很多人跟你问一样的问题:https://github.com/jashkenas/coffeescript/search?q=ternary+operator&type=Issues&utf8=%E2%9C%93

只能说Coffee里就是不支持三元运算。

作者:就是不给你三元运算,不服你来打我啊

千紇 2022-09-05 20:36:19

或许是因为问号有其他用途
话说foo?.bar?()能省很多代码啊

最终幸福 2022-09-05 20:36:19

簡單既可以是書寫簡單,也可以是思路簡單。

比如 foo?.bar?() 你要自己寫,思路就會被打斷,因爲你要被迫考慮具體實現的問題,注意力從全局移開了。

即便是書寫簡單的寫法,也不一定思路簡單。foo?true:false 雖然看上去簡單,但要 nest 就不得不考慮優先級的問題。

嘦怹 2022-09-05 20:36:19

给大家看一个句式:
_p = if url.indexOf '?' is -1 then '?' else '&'

结果是

var _p;
_p = url.indexOf('?' === -1) ? '?' : '&';

非得
_p = if url.indexOf('?') is -1 then '?' else '&'

别告诉我前面的写法不对……

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文