반응형
청춘고양이
배움을 기록하는 곳
청춘고양이
전체 방문자
오늘
어제
  • Hello World (119)
    • JQuery (5)
    • In my opinion (4)
    • HTML&CSS (8)
    • JS (9)
    • JAVA (21)
    • Spring Boot (21)
    • Node.js (1)
    • Linux (7)
    • Git (2)
    • Kotlin (4)
    • Fluttor (4)
    • 정보처리기사 (19)
    • AWS (1)
    • Oracle (8)
    • MySQL (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • spring 기본설정
  • 자바
  • js
  • 제이쿼리
  • 청춘고양이
  • 자바db연동
  • css
  • js 로또 번호
  • 중복 제거 로또
  • 스크롤js
  • 쉬프트 연산
  • 제이쿼리 패스워드 변경
  • 객체 안의 함수
  • ScrollEffectJs
  • 제이쿼리 버튼클릭시 색 변경
  • 가위바위보js
  • 초보개발
  • js 비밀번호
  • 제이쿼리 비밀번호
  • js 패스워드 변경

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
청춘고양이

배움을 기록하는 곳

JS

clean JS

2022. 8. 22. 23:45
반응형

JS를 깔끔하기 적는 법 + 수업 들으면서 내가 몰랐던 부분 공부 정리.

1. html에 id를 적으면 적혀있는 id의 이름으로 js에서 바로 호출 가능 ex) html에서 id="hi"로 이름을 지었다면 js에서 console.log(hi)를 호출하면 id부분이 나옴. const hi = window.document.getElementById('hi')를 적어주는 이유는 자동완성을 쓸 수 있기 때문.

2. 여러 기능을 할 때 사용할 때 data-set을 이용하면 되게 편리함. 

data-set 사용 시 이렇게는 무조건 적어주고 시작하자.

const functions = { 
	//이 부분에는 기능을 구현하는 부분을 적어주면 됨. 메소드처럼 사용하면 되는 듯? 
	//handleEditStart: (element) => {
    	profileAddDialog.classList.add('edit-mode');
    }
    handleEditStart: (params) => {
    	profileAddDialog.classList.add('edit-mode');
        if(profileAddDialog.classList.contains('edit-mode')) {
        params.event.preventDefalut(); //이렇게 해서 preventDefalut를 쓸 수 있게 하기 위해서 밑에 element와 event를 나눈 거임.
    }
};

//여기서 data-func은 data-set의 이름을 html에서 지어준걸로 data-func으로 해도 되고 아니면 data-set 으로 그냥 지어줘도 됨.
//data 뒤에 들어가는 이름은 자유롭게 지정하면 되는 듯.
window.document.body.querySelectorAll('[data-func]').forEach(x => {
	x.addEventListner('click', e => {
    	const dataFuncValue = x.dataset.func; //앞에는 이름을 지어주는 거고 뒤에 func부분은 data뒤에 나오는 이름임. ex)func => data-(func)괄호로 되어 있는 부분
        if(typeof (dataFuncValue) === 'string' && typeof(functions[dataFuncValue]) === 'function') {
        	//여기에다가 이제 각각의 기능을 적어주면 됨. 
        	//functions[dataFuncValue](e); //이렇게 하면 functions에 지정해놓은 함수를 호출 가능하다.
           	//하지만 element 즉, 받는 인자의 기능과 event의 기능을 같이 사용하고 싶으면 밑에 처럼 바꿔 주고 위에 element이름 즉, 매개변수를 params로 바꿔주면 됨. 
            functions[dataFuncValue]({
            	element: x,
                event: e
            });
        }
   });
});
반응형
저작자표시 (새창열림)

'JS' 카테고리의 다른 글

가위바위보  (0) 2022.06.02
lotto JS  (0) 2022.06.02
Scroll Effect  (0) 2022.05.29
Timer  (0) 2022.05.28
Text Effect  (0) 2022.05.27
    'JS' 카테고리의 다른 글
    • 가위바위보
    • lotto JS
    • Scroll Effect
    • Timer
    청춘고양이
    청춘고양이
    신입개발자

    티스토리툴바