How to clone a two-dimensional array in TypeScript

3 Answers

0 votes
let arr2D: number[][] = [
    [1, 2, 3, 0, 856],
    [4, 5, 6, 17, 230],
    [7, 8, 9, 28, 768]
];
  
let clonedArray: number[][] = arr2D.map(innerArray => innerArray.slice());
  
console.log(clonedArray);
  
  
  
/*
run:
  
[[1, 2, 3, 0, 856], [4, 5, 6, 17, 230], [7, 8, 9, 28, 768]]
  
*/

 



answered Mar 8, 2025 by avibootz
0 votes
let arr2D: number[][] = [
    [1, 2, 3, 0, 856],
    [4, 5, 6, 17, 230],
    [7, 8, 9, 28, 768]
];
  
let clonedArray: number[][] = JSON.parse(JSON.stringify(arr2D));
  
console.log(clonedArray);
  
  
  
/*
run:
  
[[1, 2, 3, 0, 856], [4, 5, 6, 17, 230], [7, 8, 9, 28, 768]]
  
*/

 



answered Mar 8, 2025 by avibootz
0 votes
let arr2D: number[][] = [
    [1, 2, 3, 0, 856],
    [4, 5, 6, 17, 230],
    [7, 8, 9, 28, 768]
];
  
let clonedArray: number[][] = [];
let arr2D_length: number = arr2D.length;
for (let i = 0; i < arr2D_length; i++) {
    clonedArray[i] = [];
    let arr2D_i_length: number = arr2D[i].length;
    for (let j = 0; j < arr2D_i_length; j++) {
        clonedArray[i][j] = arr2D[i][j];
    }
}
  
console.log(clonedArray);
  
  
  
/*
run:
  
[[1, 2, 3, 0, 856], [4, 5, 6, 17, 230], [7, 8, 9, 28, 768]]
  
*/

 



answered Mar 8, 2025 by avibootz

Related questions

1 answer 94 views
3 answers 125 views
1 answer 96 views
1 answer 103 views
1 answer 110 views
110 views asked Mar 8, 2025 by avibootz
3 answers 126 views
2 answers 186 views
...