-
[WEB2 JavaScript] 33. 객체의 활용 | 초코더JavaScript/생활코딩 2019. 11. 19. 13:29
오늘은 객체를 활용해서 공부하는 시간을 가져볼게요.
우선 아래의 코드는 함수를 이용하여 night모드와 day모드를 만들어주었습니다.
function LinksSetColor(color){ var alist = document.querySelectorAll('a'); var i = 0; while(i < alist.length){ alist[i].style.color = color ; i = i + 1; } } function BodySetColor(color){ document.querySelector('body').style.color = color ; } function BodySetBackgroundColor(color){ document.querySelector('body').style.backgroundColor = color ; } function nightDayHandler(self){ if (self.value === 'night'){ BodySetBackgroundColor('black'); BodySetColor('white'); self.value = 'day' Links.setColor('powderblue'); }else{ BodySetBackgroundColor('white'); BodySetColor('black'); self.value = 'night' LinksSetColor('blue'); } }
그럼 객체를 이용하여 코드를 좀 더 간단히 만들어 보겠습니다.
Body라는 이름을 가진 객체를 선언해주고 setColor와 setBackgroundColor라는 프로퍼티를 만들어줍니다.
객체와 객체 사이에 콤마( , )를 붙여주세요!!
- setColor는 color의 속성을 변경해주는 함수
- setBackgroundColor는 background-color의 속성을 변경해주는 함수
var Body = { setColor : function(color){ document.querySelector('body').style.color = color; }, setBackgroundColor : function(color){ document.querySelector('body').style.backgroundColor = color ; } }
그럼 객체의 선언부를 다짰으니 사용하는 부분의 코드를 짜보겠습니다.
객체는 Body.프로퍼티명(인자); 이런식으로 사용해줍니다.
function nightDayHandler(self){ if (self.value === 'night'){ Body.setBackgroundColor('black'); Body.setColor('white'); self.value = 'day'; LinksSetColor('powderblue'); }else{ Body.setBackgroundColor('white'); Body.setColor('black'); self.value = 'night'; LinksSetColor('blue'); } }
그럼 LinksSetColor 부분도 객체화 시켜볼게요.
var Links = { setColor : function(color){ var alist = document.querySelectorAll('a'); var i = 0; while(i < alist.length){ alist[i].style.color = color ; i = i + 1; } } }
전체코드를 살펴볼게요~
var Links = { setColor : function(color){ var alist = document.querySelectorAll('a'); var i = 0; while(i < alist.length){ alist[i].style.color = color ; i = i + 1; } } } var Body = { setColor : function(color){ document.querySelector('body').style.color = color; }, setBackgroundColor : function(color){ document.querySelector('body').style.backgroundColor = color ; } } function nightDayHandler(self){ if (self.value === 'night'){ Body.setBackgroundColor('black'); Body.setColor('white'); self.value = 'day'; Links.setColor('powderblue'); }else{ Body.setBackgroundColor('white'); Body.setColor('black'); self.value = 'night'; Links.setColor('blue'); } }
'JavaScript > 생활코딩' 카테고리의 다른 글
[WEB2 JavaScript] 31. 객체와 반복문, 32. 객체프로퍼티와 메소드 | 초코더 (0) 2019.11.18 [WEB2 JavaScript ] 30.객체 쓰기와 읽기 | 초코더 (0) 2019.11.18 [WEB2 JavaScript] 28.함수의 활용 | 초코더 (0) 2019.11.15 [WEB2 JavaScript] 25.함수, 26. 함수 : 매개변수와 인자, 27. 리턴 | 초코더 (0) 2019.11.15 [WEB2 JavaScript] 23.배열과 반복문의 활용 | 초코더 (0) 2019.11.14