?? 和 ?.:默认值别再被 0 和空字符串坑了
用 ?? 代替 || 给默认值,不再误伤 0、空字符串和 false;再配合 ?. 和 ??= 安全取值、补默认字段。
关于「前端」的 4 篇手记 清除搜索 ×
用 ?? 代替 || 给默认值,不再误伤 0、空字符串和 false;再配合 ?. 和 ??= 安全取值、补默认字段。
展开语法只拷一层,JSON.parse(JSON.stringify()) 会弄丢 Date、Set 和 undefined。浏览器和 Node.js 17+ 内置的 structuredClone() 能正确深拷贝,但它也有拷不了的东西。
用原生 <dialog> 和 showModal() 做确认框:浏览器处理遮罩、inert 和 Esc,表单 method=dialog 直接拿 returnValue。
fetch 默认没有超时。本文用 AbortSignal.timeout 与 AbortController 做超时和取消,并分清 TimeoutError、AbortError 与 res.ok。
在快一点的世界里,
留一个慢一点的地方。