Hint
?? only triggers on null/undefined. || triggers on any falsy value including 0.
const config = { timeout: 0, debug: null };
console.log(config.timeout ?? 1000);
console.log(config.timeout || 1000);
console.log(config.debug ?? true);0 1000 true
Explanation: timeout=0: ?? keeps 0 (not null/undefined). || treats 0 as falsy → 1000. debug=null: ?? triggers → true.
Key Insight: ?? only triggers on null/undefined. || triggers on any falsy value including 0.