Published signals

Ein einziger `??` vs `||` Fehler ließ alle Benutzeravatare in der Produktion ausfallen

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

Ein Entwickler hat versehentlich `||` anstelle von `??` in JavaScript verwendet, was dazu führte, dass alle Benutzeravatare in der Produktion nicht mehr funktionierten. Dies verdeutlicht den kritischen Unterschied zwischen dem Nullish-Coalescing- und dem logischen ODER-Operator. Teams sollten strengere Linting- und Code-Review-Praktiken einführen.

Ein scheinbar kleiner Fehler bei der Verwendung von JavaScript-Operatoren führte zu einem Produktionsausfall, bei dem alle Benutzeravatare nicht geladen werden konnten. Der Entwickler verwendete `||` anstelle von `??`, wodurch falsy-Werte wie leere Zeichenketten ersetzt wurden, was die Bild-URLs beschädigte. Dieser Vorfall unterstreicht die Bedeutung des Verständnisses des Unterschieds zwischen dem logischen ODER (`||`) und dem Nullish-Coalescing-Operator (`??`). `||` gibt den rechten Operanden für jeden falsy-Wert (0, '', false, null, undefined) zurück, während `??` dies nur bei null oder undefined tut. Der Fehler wurde durch Benutzermeldungen entdeckt, und die Korrektur war eine einzige Zeichenänderung. Für Entwicklungsteams ist dies eine starke Erinnerung daran, ESLint-Regeln zu übernehmen und operatorspezifische Prüfungen in Code-Reviews einzuführen. Die Geschichte hat in chinesischen Entwicklerforen große Resonanz gefunden und Diskussionen über defensive Programmierung und das Testen von Randfällen ausgelöst.