javascript - 如何从对象响应中删除特定键值的引号并返回相同的结构
问题描述
我的响应结构如下
{
"last UpdatedTime":"18:00:01 AM",
"has PErmission":false,
"block UsersSubFeatures":true,
"block CurrentUserTill":"NA",
"unlock UserOnlyForVisibility":"['departmentXYZ']"
}
注意: "unlockUserOnlyForVisibility":"['departmentXYZ']" // 数组中的字符串。但想转换喜欢
{
"last UpdatedTime":"18:00:01 AM",
"has PErmission":false,
"block UsersSubFeatures":true,
"block CurrentUserTill":"NA",
"unlock UserOnlyForVisibility":['departmentXYZ']
}
所以我尝试了 JSON.parse(),它给了我Unexpected syntaxError: unexpected token of in JSON at position 1 [Object object]
所以尝试了像下面这样成功删除引号的正则表达式。但不确定这是否是处理此问题的正确方法
谢谢您的帮助
解决方案
解决这个问题的正确方法是修复你的后端,以及你如何生成和管理价值。如果你真的想用你的前端来修复它,你需要两个步骤:
- 在双引号中转换单引号
- 使用 JSON.parse 将给定的字符串转换为对象
因此,要执行这些步骤,您需要以下代码:
JSON.parse("['departmentXYZ']".replace(/'/g, '"')); // ["departmentXYZ"]
推荐阅读
- typescript - 打字稿:可添加类型的通用?(带`+`)?
- angular - rxjs:如何让 foreach 循环等待内部 observable
- reactjs - 关系数据 Redux
- mysql - Rails 4 上的主数据库和副本数据库
- php - Mysql记录拉取并添加到php数组中
- python - 如何在 opencv-python 中将 EXR 图像与 jpg 图像合并?
- discord.js - “TypeError:无法读取未定义的属性‘split’” discord.js v12
- graphql - GraphQL 在类型之前定义联合
- go - 使用golang server同时服务flutterweb app和rest api
- sql - Postgres 每小时按数据分组,然后找到 max 和 min createdAt 的时间差并计算它们的总和