Tuesday, 3 January 2017

javascript - Copy array items into another array



I have a JavaScript array dataArray which I want to push into a new array newArray. Except I don't want newArray[0] to be dataArray. I want to push in all the items into the new array:



var newArray = [];

newArray.pushValues(dataArray1);
newArray.pushValues(dataArray2);
// ...



or even better:



var newArray = new Array (
dataArray1.values(),
dataArray2.values(),
// ... where values() (or something equivalent) would push the individual values into the array, rather than the array itself
);



So now the new array contains all the values of the individual data arrays. Is there some shorthand like pushValues available so I don't have to iterate over each individual dataArray, adding the items one by one?


Answer



Use the concat function, like so:



var arrayA = [1, 2];
var arrayB = [3, 4];
var newArray = arrayA.concat(arrayB);


The value of newArray will be [1, 2, 3, 4] (arrayA and arrayB remain unchanged; concat creates and returns a new array for the result).



No comments:

Post a Comment

c++ - Does curly brackets matter for empty constructor?

Those brackets declare an empty, inline constructor. In that case, with them, the constructor does exist, it merely does nothing more than t...