concat не изменяет начальные массивы, но возвращает копию "на один уровень глубже", содержащую копии элементов, скомбинированные из массивов-оригиналов. Элементы массивов-оригиналов копируются в новый массив таким образом:
Ссылки на объекты (а не реальные объекты): concat копирует ссылки на объекты в новый массив. И массив-оригинал, и новый массив ссылаются на один и тот же объект. Если изменяется оригинальный объект, эти изменения отражаются и в новом массиве, и в массиве-оригинале.
Строки и числа (не объекты String и
Number): concat копирует строки и числа в новый массив. Изменение строки или числа одного массива не влияет на другие массивы.
Если в любой массив добавляется новый элемент, другой массив остаётся без изменений.
Следующий код объединяет два массива:
alpha=new Array("a","b","c") numeric=new Array(1,2,3) alphaNumeric=alpha.concat(numeric) // новый массив ["a","b","c",1,2,3]