[英]Ternary operators returning “true : false”. Why?
通過我們的項目,Coworker讓我通過字符串“true:false”grep,我發現很多三元運算符返回顯式的真或假。 例如:
return this.state == Cursor.CLOSED ? true : false;
不僅僅是在我們的項目中,而且有很多模塊/庫可以做到這一點。 對我來說這似乎是多余的,因為作者可能只是這樣寫的:
return this.state == Cursor.CLOSED;
它是針對Javascript中的一些陷阱的防御性編碼嗎? 或者只是明確你要回來的東西?
這是非常不必要的,但在許多語言中這是一個非常常見的錯誤†。 因為相等運算符幾乎完全用於條件,一些知識淵博的程序員不知道,更有經驗的程序員偶爾會忘記它實際上可以用於它的價值。 從來沒有任何重要的JavaScript實現具有使這必要的怪癖。
†“錯誤”在這里感覺不友好,因為代碼是正確的,只是不必要的冗長。 但我想你知道我的意思。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.