●Event

 ▷사용자의 행동. 이에 반응하여 다른 함수를 호출할 수 있다.

 

 ▶Event handler

  ▷Event에 반응하여 호출되는 function

  ▷Event에 Event handler 추가: registering an event handler - addEventListener

  ▷Event에 Event ganlder 제거: removeEventListener

 

 ▶Event registering

  ▶Inline model

   ▷HTML코드에서 이벤트 함수 설정

   ▷대부분의 event 앞에 on이 붙음. (onload, onfocus...)

   ▷ex) <body onload = "start()"> / document.onload = "start()";

 

  ▶Object.addEventListener ( 이벤트 타입, 실행할 이벤트 리스너, 이벤트 전파 방식 ) 

   ▷해당 객체에 이벤트 리스너를 전달함.

   ▷이벤트 타입: 이벤트 리스너에 등록할 이벤트를 문자열로 전달.

    ▷load, ended, click, mouseover, mouseout...

    ▷이벤트 타입들: developer.mozilla.org/en-US/docs/Web/Events

   ▷실행할 이벤트 리스너: 지정된 이벤트가 발생했을 때 실행할 이벤트 리스너 전달. (ex) 함수명)

   ▷이벤트 전파 방식: false면 버블링, true면 캡쳐링

    ▷버블링: 이벤트가 발생한 요소부터 시작해서, DOM 트리를 따라 위쪽으로 올라가며 전파

    ▷캡쳐링:  이벤트가 발생한 요소까지 DOM 트리의 최상위부터 아래쪽으로 내려가면 전파

 

 ▶Event Bubbling

  ▷Event가 일어나면,

  ▷해당 element의 Event handler가 먼저 호출되고, 

  ▷부모의 Event handler가 호출됨.

  ▷cancelBubble을 통해 bubbling을 취소할 수 있음.

 

 

 

 

○Event 종류

 ▷www.w3schools.com/js/js_events_examples.asp

 ▶load

  ▷해당 element가 load될 때

 

 ▶mousemove

  ▷마우스가 해당 element위에서 움직일 때

 

 ▶mouseover

  ▷마우스가 해당 element에 진입할 때

 

 ▶mouseout

  ▷마우스가 해당 element에서 나갈 때

 

 ▶focus

  ▷해당 element가 focus를 얻었을 때 (Tab키 or Click을 통해)

 

 ▶blur

  ▷해당 element가 focus를 잃었을 때

 

 ▶submit

  ▷submit할때 (input에서 type = "submit"인 버튼)

 

 ▶reset

  ▷reset할때 (input에서 type = "reset"인 버튼)

 

 

 

○Event Object (이벤트 객체)

 ▷Event handler 함수가 jQuery에서 콜백될 때, 이벤트 객체를 함수의 인자로 전달함.

 ▷이벤트의 특성을 결정하거나, 기본 동작을 막을 수 있음.

 

 ▶메서드, 내부 변수

 

  ▷pageX : 브라우저 화면을 기준으로 한 마우스 X 좌표 위치

  ▷pageY : 브라우저 화면을 기준으로 한 마우스 Y 좌표 위치

  ▷preventDefault() : 기본 이벤트를 제거합니다.

  ▷stopPropagation() : 이벤트 전달을 제거합니다.

 

 

 

'컴퓨터 언어 > JS' 카테고리의 다른 글

HTML DOM  (0) 2020.10.28
JSON  (0) 2020.10.28
Cookie, Web Storage  (0) 2020.10.27
Object - Method, Member function  (0) 2020.10.18
Array  (0) 2020.10.18

○Cookie

 ▷작은 크기(최대 4kb)의 Key와 Value의 String Pair. (Key에 해당되는 Value)

 ▷후속 방문을 위해 유저 정보 등을 저장. 

 ▷유저의 컴퓨터(Client)에 저장됨. 해당되는 website에 들어가면, 서버에 자동으로 전달함.

 ▷Cookie가 만들어진 Web sever / scripts에서만 접근 가능.

 ▶문제점

  ▷작은 용량의 한계

  ▷Document 전체를 보관 불가능

  ▷같은 site를 여러 탭에서 동시에 접근헤도 하나의 Cookie만 생성됨. (Cookie를 공유함.)

 

 

○HTML5 Web Storage

 ▷서버에서 접근 불가. (프로그램을 통해 서버에 보낼수는 있음)

 ▷꽤 큰 용량(5MB)

 ▷Application(Domain, protocol)마다 따로 저장됨.

 

 ▶Local Storage

  ▷Client에 영구적으로 저장되는 정보.

  ▷Key - Value의 String Pair를 저장.

  ▶window.localStorage

   ▷저장1 - localStorage.setItem("lastname", "Smith")

   ▷불러오기1 - localStorage.getItem("lastname")

 

   ▷저장2 - localStorage.lastname = "Smith"

   ▷불러오기2 - localStorage.lastname

 

 ▶Session Storage

  ▷세션동안만 잠시 저장되는 정보. (창이 닫히면 데이터가 사라짐)

  ▷Key - Value의 String Pair를 저장.

  ▶window.sessionStorage

   ▷저장1 - sessionStorage.setItem("lastname", "Smith")

   ▷불러오기1 - sessionStorage.getItem("lastname")

 

   ▷저장2 - sessionStorage.lastname = "Smith"

   ▷불러오기2 - sessionStorage.lastname

'컴퓨터 언어 > JS' 카테고리의 다른 글

JSON  (0) 2020.10.28
Event  (0) 2020.10.27
Object - Method, Member function  (0) 2020.10.18
Array  (0) 2020.10.18
Function  (0) 2020.10.18

●Object(객체)

 ▷메서드, 멤버 요소들을 가진 요소. 여러 속성을 하나의 변수에 저장할 수 있도록 해주는 데이터 타입.

 ▷중괄호 표기를 통해 만들 수 있다.

 ▷객체 변수를 복사하면, 참조가 복사된다. (객체 복사 X)

 

 

○Math

 ▷수학적 계산을 위한 객체

 ▶메서드

  ▷Math.random()

   ▷0≤x<1 인 무작위 값을 반환

 ▶멤버 변수

 

 

○String

 ▷여러 개의 문자(character)들을 하나로 묶어 취급하는 객체

 ▶메서드

 

 

○Date

 ▷date, time의 조정을 위한 객체

 ▶메서드

 

 

○Boolean

 ▷true, false 값을 가지는 객체

 ▶메서드

 

 

○Number

 ▷수를 가지는 객체

 ▶메서드, 멤버 변수

 ▷Number.tofixed ( 정수 )

  ▷Number의 소수점을 정수로 제한

 

 

○document

 ▷브라우저에서 제공하며, 자바스크립트가 문서를 조정할수 있는 기능을 제공하는 객체

 ▶메서드

  ▷document.writeln (String)

   ▷웹페이지에 문자열을 출력. (줄바꿈 포함)

   ▷HTML 태그 또한 사용가능. ex) <h1> </h1>

 

  ▷document.getElementById( 요소ID )

   ▷태그의 ID값을 이용해서 요소에 접근하여 반환

   ▷변수로 접근하여 여러 조작 가능

 

  ▷document.getElementByClassName( 요소 ID )

   ▷Class 이름을 이용해서 요소에 접근하여, 해당 Class 이름을 가진 모든 요소를 배열로 반환

 

  ▷document.createElement( 태그 )

   ▷해당 태그의 Element를 생성.

 

 

 ▶내부 변수

  ▷document.forms[id]

   ▷해당 id를 가진 form

 

○window

 ▶메서드

  ▷window.alert (String)

   ▷문자열의 메세지를 가지는 경고대화창을 띄움.

 

  ▷window.prompt (String)

   ▷문자열의 메세지를 가지는 대화창을 띄웁니다. 입력을 받을 수 있음.

   ▷입력은 String형태로 반환됩니다.

 

'컴퓨터 언어 > JS' 카테고리의 다른 글

Event  (0) 2020.10.27
Cookie, Web Storage  (0) 2020.10.27
Array  (0) 2020.10.18
Function  (0) 2020.10.18
Element  (0) 2020.10.18

●Array

 ▷연속된 메모리에서 데이터들의 집합.

 ▷다른 언어의 배열과 유사함

 ▷index가 원래 배열의 범위를 넘어가면, 재할당함.

 

 ▶선언

  ▷var array1 = new Array();

  ▷var array2 = new Array( length );

  ▷var array3 = [ 1, 2, 3, 4, ... ];

  ▷var mulArray = [ [1, 2, 3], [4], [5, 6] ];

 

○메소드

 ▷join(구분자): 모든 요소를 구분자로 연결하고 문자열로 반환.

 

 ▶sort(비교 함수): 비교 함수를 이용하여 오름차순으로 정렬

  ▷비교 함수: 매개 변수가 2개고, 양수/0/음수를 반환하는 함수.

  ▷비교 함수가 없으면 문자열 비교를 한다.

 

 ▷indexof(값): 처음으로 값과 동일한 경우의 요소 index를 반환 

 ▷lastIndexof(값): 마지막에 만나는 값과 동일한 경우의 요소 index를 반환 

 

○멤버 변수

 

○for(var element in Array)

 ▷해당 for...in 형태로 배열의 요소들을 순회 가능함.

 

'컴퓨터 언어 > JS' 카테고리의 다른 글

Cookie, Web Storage  (0) 2020.10.27
Object - Method, Member function  (0) 2020.10.18
Function  (0) 2020.10.18
Element  (0) 2020.10.18
기타 함수(메서드)  (0) 2020.10.17

●Function

 ▷JS에 미리 정의된 함수들을 사용 가능

 ▷또한 자기가 함수를 새롭게 정의 가능

 

 ▶함수 정의

  ▷function function-name( parameter-list ) {

  ▷declarations, statements

  ▷}

  ▷return type지정이 필요 없음 (자동으로 변환됨.)

 

 ▶매개변수

  ▷pass-by-value: 값이 복사되어 매개변수로 전달됨. 해당 매개변수가 바뀌어도 원본은 그대로임. (ex) 정수, 실수...)

  ▷pass-by-reference: 주소가 복사되어 매개변수로 전달됨. 해당 매개변수가 바뀌면 원본도 바뀜. (ex) 배열)

 

○Method

 ▷Object 내에서 정의된 함수

 ▷Object.~~의 형태로 접근 가능

 

○EventHandling

 ▷Object.addEventListener ( 이벤트 타입, 실행할 이벤트 리스너, 이벤트 전파 방식 )

 ▷위를 통해 특정 이벤트에 특정 함수를 호출하게 할 수 있음.

'컴퓨터 언어 > JS' 카테고리의 다른 글

Object - Method, Member function  (0) 2020.10.18
Array  (0) 2020.10.18
Element  (0) 2020.10.18
기타 함수(메서드)  (0) 2020.10.17
JavaScript 기초  (0) 2020.10.17

+ Recent posts