描述
使用JSON.parse(window.localStorage.getItem(TASKKEY)||'[]')獲取緩存中的數據時,遇到了以下問題

分析
經過求證發現JSON.parse(undefined)會報此類錯誤,可是在上述代碼中用||規避了window.localStorage.getItem(TASKKEY)為undefined的情況,還是報錯,后發現window.localStorage.getItem(TASKKEY)的undefined值為string類型,即"undefined",而非undefined,因此需要判斷是的window.localStorage.getItem(TASKKEY)是否等於"undefined"
console.log(typeof window.localStorage.getItem(TASKKEY),typeof undefined)

const a=JSON.parse(undefined||'[]')
console.log(a)

解決方法
return JSON.parse(window.localStorage.getItem(TASKKEY)!=='undefined'?window.localStorage.getItem(TASKKEY):'[]')||[]
