Published signals

たった一つの `??` と `||` の間違いで全ユーザーのアバターが表示されなくなった

Score: 8/10 Topic: JavaScript nullish coalescing vs logical OR bug

JavaScriptで`||`を`??`の代わりに使ったため、本番環境で全ユーザーのアバターが表示されなくなりました。この事例は、null合体演算子と論理OR演算子の重要な違いを浮き彫りにしています。チームはより厳格なリンターとコードレビューの実践を強化すべきです。

JavaScriptの演算子を誤って使用したことで、本番環境で全ユーザーのアバターが読み込めなくなるインシデントが発生しました。開発者が`??`の代わりに`||`を使用したため、空文字列などのfalsyな値が置き換えられ、画像URLが壊れました。この事例は、論理OR(`||`)とnull合体演算子(`??`)の違いを理解することの重要性を強調しています。`||`はfalsyな値(0, '', false, null, undefined)すべてに対して右辺を返しますが、`??`はnullまたはundefinedの場合のみ右辺を返します。バグはユーザーからの報告で発見され、修正は1文字の変更でした。エンジニアリングチームは、ESLintルールの採用やコードレビューでの演算子チェックを強化すべきです。この話は中国の開発者フォーラムで広く共感を呼び、防御的コーディングやエッジケースのテストについての議論を引き起こしています。