Да, это проблема с интерпретатором JavaScript Firefox в целом.Это не просто eval
: если вы поместите пятьдесят тысяч строк:
{a:1,b:2,c:3,d:4,e:5,f:6,g:7,h:8,i:9,j:10,a2:1,b2:2,c2:3,d2:4,e2:5,f2:6,g2:7,h2:8,i2:9,j2:10},
в литерал массива в простом файле сценария или в элемент * <script>
, вы получите точно такую же ошибку.
Кажется, сложность блока скрипта ограничена временем компиляции JS_DEFAULT_SCRIPT_STACK_QUOTA
.См. 420869 и связанные с ним ошибки.
Маловероятно, что вы встретите это в нормальных условиях.Конечно, для случая JSON вы можете использовать JSON.parse
, который, не будучи полным интерпретатором JavaScript, не подвержен этому ограничению.Если вам нужен синтаксический анализатор недействительных JSON JS, который не затронут, я думаю, вам придется написать его самостоятельно ... хотя, вероятно, он будет раздражающе медленным, когда вы будете вводить это долго.