解决javascript和nodejs处理json字符串key值为19位数字丢精度丢失问题
解决办法:
1.提取19位数字转为字符串
2. 再对处理过的json字符串转为json对象
处理示例:
<script type="text/javascript">
var abc = '{"out_ono": "104934723","user_id": 1395124661628849146,"test":123}';
console.log("这里打印正常1:",abc);
obj = JSON.parse(abc); //转json字符串
console.log("这里打印就不正常:",obj)
const user_id = abc.match(/[0-9]{19}/)[0] //正则获取19位数字的值
newAbc = abc.replace(user_id,`"${user_id}"`) // 补上双引号
console.log(newAbc)
obj2 = JSON.parse(newAbc);
console.log("这里打印正常2:",obj2)
</script>