SyntaxError:意外的数字

时间:2014-01-09 05:53:46

标签: javascript json

我正在尝试解析由数值组成的JSON字符串,但我不断收到 SyntaxError:意外的数字

当我删除前面的0时,它可以工作,所以我可以很容易地摆脱0,但是我需要为显示目的而格式化的值,是否有一种简单的方法可以将其解析为字符串数组而不是一组数字?

此外,删除字符串中所有前面的0的最简单方法是什么?我假设正则表达式最好?但欢迎任何其他建议。

JSON.parse('[26,27,28,29,30,31,01,02,03,04,05,06,07,08,09]');

2 个答案:

答案 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"]');

应该将其解析为字符串数组而不是数字数组。