js 如何将 字符串数组 转成js数组

[{latitude:, longitude:, proname:连城冠豸山创5A级旅游区项目 }]

如何将上面这段字符串 转成js 数组对象 , 这样数组中的元素 就可以变成一个个可以取值的对象

用eval 强制转换也不行

阅读 4.2k
6 个回答

你这是啥玩意字符串
: , 啥格式啊 这是

你的这个格式需要更正的
JSON.parse 不可以 因为JSON.parse 转换 key value 必须是双引号包括 具体查询文档
什么字符串替换 去除 可以 但是访问也是访问不了

用 replace() 和 splite() 方法

把你想要的结果贴出来,要什么数组?

不要用eval
用JSON.parse

你贴的那部分有问题啊,应该是这样子的格式吧,[{name:"a"},{name:"b"},...],这样子一般是可以用JSON.parse()转化的

先把转成合法的 json 格式字符串,然后在转 js 数组

你这个字符串要转的话,可以这么写

const str = '[{latitudes:123, longitude:, proname:连城冠豸山创5A级旅游区项目 }]'
const jsonStr = str.replace(
  /"?((?:(?!\{).)+?)"?:"?((?:(?![\}|,|"]).)*)"?([,|\}])/g,
  (_, b, c, d) => {
    return `"${b.trim()}":"${c.trim()}"${d}`
  },
)
const arr = JSON.parse(jsonStr)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题