JavaScript слишком много аргументов конструктора - PullRequest
6 голосов
/ 12 сентября 2010

Я пытаюсь импортировать набор координат из внешнего JavaScript. Я должен включить около 78,740 элементов в конструктор, но Firefox просто выдает ошибку:
«слишком много аргументов конструктора»
У кого-нибудь есть идеи?

Это мой код:

function CreateArray() {   
return new Array(
...
...
...
78.740 elements later
...
); }

Ответы [ 2 ]

9 голосов
/ 12 сентября 2010

Попробуйте литерал массива, у меня это сработало (с успехом проверено на миллион элементов):

function CreateArray() {   
    return [
        ...
    ];
}
1 голос
/ 12 сентября 2010

Возможно, вы сталкиваетесь с ограничениями памяти,

Как насчет попытки поместить () значения в массив вместо инициализации всех их сразу?Разбейте его на более мелкие порции данных, чтобы добавить в массив вместо того, чтобы добавлять все в одну команду.

var a = [];
a.push(1,2,3,4,5,6,7,8,9,10);
a.push(1,2,3,4,5,6,7,8,9,10);
a.push(1,2,3,4,5,6,7,8,9,10);
a.push(1,2,3,4,5,6,7,8,9,10);
// etc...
return a;
...