针对json字符转数组,并且保证不丢失number数字的精度

  • 1.开始我也考虑过用parseeval去直接转换为数组集合,但是里面的number超过16位精度会丢失
  • 2.后面想到先把number数字正则筛选为string形式,然后再去parse转换,这样就能保证精准度一样
const res = "[{\"id\": 1661309874902732803, \"name\": \"上衣\", \"unit\": \"件\", \"price\": 10, \"quantity\": 1}, {\"id\": 1661310354269736962, \"name\": \"头饰\", \"unit\": \"套\", \"price\": 15, \"quantity\": 2}]"
const convertedJsonString = res.replace(/"id": (\d+)/g, '"id": "$1"')
const resArray = JSON.parse(convertedJsonString)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容