다음 groups 배열을 가지고,
이긴 사람끼리 그리고 진 사람끼리 팀을 나눠 teams 배열을 완성해보자.
let groups = [
['영준', '캡틴'],
['태순', '우재'],
['재훈', '지웅'],
['윤형', '동욱'],
['규식', '소원'],
];
let teams = [
[],
[],
];
처음에 작성한 코드이다.
일단 생각나는대로 중첩반목문을 사용했다.
for (let i = 0; i < groups.length; i++) {
for (let j = 0; j < groups[i].length; j++) {
teams[j][i] = groups[i][j];
}
};
그렇다. 가독성이 매우 좋지 않다.
지인이 이런 나의 코드를 보더니
for...of 를 써봐서 한번 만들어보아라! 하시며 미션을 던져주셨다.
옙 자신은 없지만 도전해보겠읍니다요..
for (let key of groups) {
teams[0].push(key[0]);
teams[1].push(key[1]);
}
그래서 시도했는데 요 아이도 썩 보기좋아 보이지않았다.
(나는 잘 모르지만)
찾아보니 요 아이는 범용성이 좋지 않다더라.
그래서 두가지를 섞었다.
이 코드는 경우의 수가 늘어나더라도 수정하지 않고 잘 사용할 수 있는데.....
for (let key of groups) {
for (let i = 0; i<key.length;i++) {
teams[i].push(key[i]);
}
}
입문자(?)도 안될 것 같은ㅜㅜ비루한 나로써는
이 방법이 최선인지 아닌지 판단할 수 없기 때문에..
우선 강의 커뮤니티에 글을 남겼다.
다행히도 직업 특성상 주변에 개발자 동료, 지인분들이 많아서 좋다...