Javascript: объединение массива при сохранении объектов

У меня есть два массива:

ArrayOne = new Array(Array1, Array2);
ArrayTwo = new Array(Array3, Array4);
ArrayThree = new Array();

Я хочу делать:

ArrayThree = ArrayOne.concat(ArrayTwo);

В результате:

ArrayThree = {ArrayOne, ArrayTwo}

Однако эта операция приводит к:

ArrayThree = {ArrayOne[0], ArrayOne[1]... ArrayOne[n], ArrayTwo[0], ArrayTwo[1]... ArrayTwo[n]};

Любые советы о том, как получить {ArrayOne, ArrayTwo}, чтобы сохранить исходный объект массива?

Спасибо


person Dave    schedule 29.11.2011    source источник
comment
Обратные кавычки (`) предназначены для встроенного кода. Чтобы отформатировать блок строк как код, сделайте для них отступ дополнительные четыре пробела. Кнопка {} на панели инструментов редактора сделает это за вас. Отредактируйте свой вопрос и попробуйте. Щелкните оранжевый вопросительный знак на панели инструментов редактора, чтобы получить дополнительную информацию и советы по форматированию.   -  person outis    schedule 29.11.2011


Ответы (1)


Если вы не можете использовать функцию concat...

var ArrayThree = [ArrayOne, ArrayTwo];

или даже,

var ArrayThree = new Array(ArrayOne, ArrayTwo);

не проблема, если у вас есть ArrayThree ранее инициализированный

person Abdul Munim    schedule 29.11.2011
comment
Я думаю, это потому, что new Array обескуражен. Но это не совсем неправильно, не так ли? Также упоминается предпочтительная версия. - person Thilo; 29.11.2011
comment
Я не знал, что это обескураживает. Да наверное из-за этого - person Abdul Munim; 29.11.2011
comment
Проголосовали против, потому что я считаю, что этот ответ изначально предлагал использовать метод concat, а это именно то, чего не хотел ОП. Если я ошибаюсь, мои извинения. - person rossipedia; 30.11.2011