我正在尝试解析由数值组成的JSON字符串,但我不断收到 SyntaxError:意外的数字。
当我删除前面的0时,它可以工作,所以我可以很容易地摆脱0,但是我需要为显示目的而格式化的值,是否有一种简单的方法可以将其解析为字符串数组而不是一组数字?
此外,删除字符串中所有前面的0的最简单方法是什么?我假设正则表达式最好?但欢迎任何其他建议。
JSON.parse('[26,27,28,29,30,31,01,02,03,04,05,06,07,08,09]');
答案 0 :(得分:4)
这是因为领先的零。这很好用:
JSON.parse('[26,27,28,29,30,31,1,2,3,4,5,6,7,8,9]');
JSON定义说整数不能有前导
编辑删除前导零:
var str = '[26,27,28,29,30,31,01,02,03,04,05,06,07,08,09]';
str = str.replace(/\b0(\d)/g, "$1");
JSON.parse(str);
干杯
答案 1 :(得分:0)
JSON.parse('["26","27","28","29","30","31","01","02","03","04","05","06","07","08","09"]');
应该将其解析为字符串数组而不是数字数组。