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 87 views
3 answers 115 views
1 answer 89 views
1 answer 98 views
1 answer 104 views
104 views asked Mar 8, 2025 by avibootz
3 answers 113 views
2 answers 168 views
...