2차원 배열(배열을 요소로 갖는 배열)을 입력받아 'B'의 위치 정보를 요소로 갖는 배열을 리턴해야 합니다.
'B'
의 위치 정보(행, 열)를 요소로 갖는 배열을 리턴해야 합니다.[행, 열]
)'B'
를 요소로 갖는 배열 arr[i]
의 인덱스 iarr[i]
에서 'B'
(arr[i][j]
)의 인덱스 jarr
, arr[i]
의 길이는 다양하게 주어집니다.'B'
가 존재합니다.let output = findBugInApples([['A'], ['B']]); console.log(output); //[1, 0] output = findBugInApples([ ['A', 'A', 'A', 'A', 'A'], ['A', 'B', 'A', 'A', 'A'], ['A', 'A', 'A', 'A', 'A'], ['A', 'A', 'A', 'A', 'A'], ['A', 'A', 'A', 'A', 'A'], ]); console.log(output); //[1, 1]
function findBugInApples(arr) {
let result = []; // 정의해줄 필요 없음
for(let i = 0; i < arr.length; i++) {
for(let j = 0; j < arr[i].length; j++) {
if(arr[i][j] === 'B') {
result = [i,j]
}
}
} return result;
}
let result = []
//중략
firstResult = result.unshift(i);
finalResult = firstResult.pop(j);
했더니 다음과 같이 에러가 났다
VM1991:7 Uncaught TypeError: firstResult.push is not a function
at findBugInApples (<anonymous>:7:37)
at <anonymous>:1:1
firstResult = result.unshift(i);
의 리턴값이 배열이 아니라 '배열의 길이'로 리턴되기 때문이다~!!!
pop
, push
, shift
, unshift
를 쓸 경우 배열의 길이 값으로 리턴되는 것을 명심하잣