더북(TheBook)

14.4.1 지뢰가 없는 칸일 때

지뢰가 없는 칸부터 구현해 보겠습니다. 지뢰가 없는 칸이라면 주변 지뢰 개수를 화면에 표시해야 합니다. 다음은 특정 칸을 기준으로 주변 지뢰 개수를 구하는 코드입니다. 책의 코드를 보기 전에 직접 구현해 보세요.

function countMine(rowIndex, cellIndex) { // 주변 지뢰 개수 세기
  const mines = [CODE.MINE, CODE.QUESTION_MINE, CODE.FLAG_MINE];
  let i = 0;
  mines.includes(data[rowIndex - 1]?.[cellIndex - 1]) && i++;
  mines.includes(data[rowIndex - 1]?.[cellIndex]) && i++;
  mines.includes(data[rowIndex - 1]?.[cellIndex + 1]) && i++;
  mines.includes(data[rowIndex][cellIndex - 1]) && i++;
  mines.includes(data[rowIndex][cellIndex + 1]) && i++;
  mines.includes(data[rowIndex + 1]?.[cellIndex - 1]) && i++;
  mines.includes(data[rowIndex + 1]?.[cellIndex]) && i++;
  mines.includes(data[rowIndex + 1]?.[cellIndex + 1]) && i++;
  return i;
}


신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.