I was browsing through some code and I was wondering how this could be useful
You want to use
.concat when you need to flatten the array and not have an array consisting of other arrays. E.g.
var a = [1,2,3]; var b = ;
console.log(b.push(a)); // Result: [4, [1,2,3]]
console.log(b.concat(a)); // Result: [4,1,2,3]
So both of your scenarios in an array of array. Since
.concat() results in an array only, pushing both
.concat(row) results in same result.
But if you want a flattened array, there is a slight change needed in your code, that you have to
.concat the array
grid and not
.push the result of concat to it, as shown in scenario 2