JavaScript - 2차원 배열 선언

최중혁·2022년 6월 29일
0

2차원 배열 초기화 - 기본

  • 보통의 2차원 배열의 선언 코드는 이중 for문을 이용한다.

    var check=new Array(m);
    for(var j=0;j<m;j++){
        check[j]=new Array(n).fill(0);
   }
	

메소드를 이용한 선언 - (불가 ver)

하지만 fill을 이용하여 new Array에 배열을 넣어도 되지 않을 까?

	var arr=new Array(n).fill(0);
  var check=new Array(m).fill(arr);

위 코드와 아래코드는 사실 같은 목적으로 짜여진 코드다. 둘다 컴파일에 아무런 문제가 없다.

하지만 여기서 문제는 fill을 이용하여 만든 2차원 배열은 배열 요소의 접근이 불가능하다. 이는 fill의 인자에는 object가 아닌 value 요소가 들어가야 하기 때문에 arr가 들어가도 value로써의 기능만 수행하기 때문이다.


메소드를 이용한 선언 - (가능 ver)

push, splice 메소드를 활용하면 new Array에 배열 객체를 넣는 것이 가능


var arr=new Array(n).fill(0);
  for(var j=0;j<m;j++){
		check.push(arr);
	}

0개의 댓글