首页 > Web开发 > 详细

使用JSON.parse出现报错 Error in mounted hook: "SyntaxError: Unexpected token u in JSON at position 0"

时间:2021-07-02 23:09:51      阅读:45      评论:0      收藏:0      [点我收藏+]

描述

使用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):‘[]‘)||[]

使用JSON.parse出现报错 Error in mounted hook: "SyntaxError: Unexpected token u in JSON at position 0"

原文:https://www.cnblogs.com/xu0428/p/14964996.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!