1 回答
TA贡献1835条经验 获得超7个赞
虽然你的是那么你只需要使用.typeof poststringJSON.parse
这失败的原因是因为有效的JSON只能有双引号(也请在此处查看完整的JSON语法)。尝试:
JSON.parse(post.replace(/\'/g, '"'))
对于您的情况(我刚刚看到您更新的问题),您的来源似乎返回时第一个字母大写,并且在尝试上述操作后您将收到新的错误。False
未捕获的语法错误:JSON 中位置 617 处的意外令牌 F
如果您无法使API正确返回它,那么您也必须这样做。.replace
const post = "{'hashtag': 'landscapephotography', 'shortcode': 'B_5b0IWqrRU', 'display_url': 'https://scontent-mad1-1.cdninstagram.com/v/t51.2885-15/e35/s1080x1080/95910887_233194497953707_7239044831960646903_n.jpg?_nc_ht=scontent-mad1-1.cdninstagram.com&_nc_cat=107&_nc_ohc=i179pDQmui0AX82O3nB&oh=676ca07cba3af57944abcba4d3a27ad2&oe=5EDE8D74', 'thumbnail_src': 'https://scontent-mad1-1.cdninstagram.com/v/t51.2885-15/sh0.08/e35/s640x640/95910887_233194497953707_7239044831960646903_n.jpg?_nc_ht=scontent-mad1-1.cdninstagram.com&_nc_cat=107&_nc_ohc=i179pDQmui0AX82O3nB&oh=1ff2ac0b031bcc7cbdbb64b2a661ea1b&oe=5EDF0745', 'is_video': False, 'comments_disabled': False, 'caption': 'Photo by Jelen Girona on May 07, 2020.', 'comments_count': 0, 'timestamp': 1588877630, 'owner': '15642627659', 'likes_count': 0}"
const postObject = JSON.parse(post.replace(/\'/g, '"').replace(/False/g, 'false'));
console.log(postObject);
我建议你也检查一下。也许您的源代码/API/后端也会返回它,第一个字母大写,并导致您的代码在以后中断。true
添加回答
举报