我有以下預配置const preloadedConfig = {
"configA": null, // either true, false or null is allowed};然后我在頁面加載時進行以下初始化let finalConfig = preloadedConfig.configA || true;場景:預加載配置中的屬性可以根據用戶的偏好更改為true、false或null我希望使用短路評估來確定用戶對頁面加載的選擇。如果用戶未提供任何選項(null),則默認選項為 true我的問題:基于從這里摘錄的以下內容:Falsy 值是那些在布爾上下文中使用時強制為 false 的值,它們是 0、null、未定義、空字符串、NaN,當然還有 false。評估如下:true >> evaluted true // oknull >> evaluted true // okfalse >> evaluted true // the problem area如果用戶提供false的配置選項,則最終評估值將始終為 true,因為它是“假值”。如果提供的值為 false,我期望的結果是布爾值false。在使用短路評估并允許 3 種類型的輸入值null、true 或 false 的同時,我應該怎么做才能使這項工作正常進行?
短路評估并將 true 或 false 分配給變量
慕森卡
2023-10-14 16:45:01