반응형
프로그래밍은 자주 반복되는 일을 간단하게 줄이는 것이라고 들은 기억이 있다. (프로그래밍의 모든 부분을 정의하는게 아니고 정의하는 것 중에 하나로서..) 오늘 그 짓을 좀 했다. 기존의 멍청한 코드를 보자
var viewContents = function(href, dataIdx){ $("#viewArea>img, #viewArea>map").remove(); var imgTag = '<img src="'+href+'" usemap="#'+dataIdx+'">'; $("#viewArea").append(imgTag); switch(dataIdx){ case "ch_4_1": $("#viewArea").append(mapDatasFic[0]); break; case "ch_4_2": $("#viewArea").append(mapDatasFic[1]); break; case "ch_4_3": $("#viewArea").append(mapDatasFic[2]); break; case "ch_4_4": $("#viewArea").append(mapDatasFic[3]); break; case "ch_4_5": $("#viewArea").append(mapDatasFic[4]); break; case "ch_4_6": $("#viewArea").append(mapDatasFic[5]); break; case "ch_5_7": $("#viewArea").append(mapDatasFic[6]); break; case "ch_5_8": $("#viewArea").append(mapDatasFic[7]); break; case "ch_5_9": $("#viewArea").append(mapDatasFic[8]); break; case "ch_5_10": $("#viewArea").append(mapDatasFic[9]); break; case "ch_5_11": $("#viewArea").append(mapDatasFic[10]); break; case "ch_5_12": $("#viewArea").append(mapDatasFic[11]); break; case "ch_6_13": $("#viewArea").append(mapDatasFic[12]); break; case "ch_6_14": $("#viewArea").append(mapDatasFic[13]); break; case "ch_6_15": $("#viewArea").append(mapDatasFic[14]); break; } };
뭐 이딴 식이었다. 굉장히 무식했다. 그런 와중에 이걸 다음처럼 간단하게 해버렸다. 내가 만든거였지만서도.. 참 거시기 했었는데 잘됐다 싶다.
var viewContents = function(href, dataIdx){ $("#viewArea>img, #viewArea>map").remove(); var imgTag = '<img src="'+href+'" usemap="#'+dataIdx+'" />'; var sliceIdx = dataIdx.split("_")[2]-1; $("#viewArea").append(imgTag, mapDatasFic[sliceIdx]); };
이젠 뭐 저렇게 무식하게 하지 않아도 된다. json과 for문에 대한 확실한 이해만 챙기는 방향으로 나가자.
반응형
'Coding Life' 카테고리의 다른 글
webStorm 9 구입 (0) | 2014.11.25 |
---|---|
한국은 눈에 보이는 것만 좋아라 한다. (0) | 2014.11.03 |
IE 8에서 jquery로 title 태그 조작 불가능 문제 (0) | 2014.08.13 |
jQuery 부작용 (0) | 2014.08.08 |
webstorm 좋다. (0) | 2014.08.06 |