목록WEB/JavaScript & jQuery (8)
롸?
ES6부터 지원되는 Promise 객체를 통해 비동기 처리식을 사용할 수 있다. 1. 콜백함수(왜 프로미스를 쓰는가?) 콜백함수(Callback Function)란 파라미터로 함수를 전달받아, 함수의 내부에서 실행하는 함수이다. 콜백함수는 함수의 내부에서 실행되기 때문에 익명의 함수를 사용한다. ex) forEach 안에 익명의 함수를 넣어서 forEach 문을 동작시킨다. let number = [1, 2, 3]; number.forEach(x => { console.log(x * 2); }); // //2 //4 //6 비동기 호출이 자주 일어나는 프로그램의 경우 ‘콜백 지옥’이 발생한다. 함수의 매개변수로 넘겨지는 콜백 함수가 반복되어 코드의 들여쓰기 수준이 감당하기 힘들어질 정도로 깊어지는 현상이..
보호되어 있는 글입니다.
화살표 함수는 ES6의 문법. function 키워드를 이용한 함수를 간단히 표현한 것으로 화살표 함수는 항상 익명이다. 1. 기본 형태 및 문법 1-1. 기존 문법과 비교 //function 키워드 이용 var foo = function() { /*작업 내용*/ }; //화살표 함수 var foo = () => { /*한 줄밖에 없을 때는 중괄호 생략 가능*/ }; 1-2. 매개 변수가 있는 경우 // 매개변수가 하나인 경우 var foo = x => x; // 매개변수가 여러개인 경우 var foo = (a, b) => a + b; foo(1, 2); // 3 1-3. 콜백함수에서 사용할 경우 // ES5 var numbers = [1, 4, 9]; var oddArr = numbers.filter(..
1. jQuery(제이쿼리)란? jQuery(제이쿼리)는 오픈 소스 기반의 자바스크립트 라이브러리이다. jQuery는 웹 사이트에 자바스크립트를 더욱 손쉽게 활용할 수 있게 해준다. 또한, jQuery를 사용하면 짧고 단순한 코드로도 웹 페이지에 다양한 효과나 연출을 적용할 수 있다. 현재 많이 사용되고 있는 자바스크립트 라이브러리는 다음과 같다. 프로토타입(Prototype) 도조(Dojo) GWT(Google Web Toolkit) MochiKit 이렇게 수많은 자바스크립트 라이브러리 중에서도 jQuery가 특히 많이 사용되는 이유는 다음과 같다. jQuery는 주요 웹 브라우저의 구버전을 포함한 대부분의 브라우저에서 지원된다. HTML DOM을 손쉽게 조작할 수 있으며, CSS 스타일도 간단히 적용..
1. DOM Level 0 이벤트 핸들링 모델 1-1. 전통적 모델 function () { alert('Hello, Event!'); return false; } 전통적 모델에서는 스크립트로 이벤트 핸들러를 추가하거나 제거할 수 있다. 이 때, 각 이벤트는 하나의 이벤트 핸들러만 등록할 수 있다. 1-2. 인라인 모델 Click 태그의 속성으로 추가, JavaScript 엔진이 onclick속성의 내용을 포함하는 익명 함수를 생성하며, 의 onclick 핸들러는 다음 익명 함수에 바인드된다. 2. DOM Level 2에서의 이벤트 핸들링 모델 addEventListener를 통해 이벤트 대상에 이벤트 리스너를 등록할 수 있으며, removeEventListener를 통해 이벤트 리스너를 제거할 수 있다..
1. 스코프(scope) 스코프란 변수들이 유효한 범위를 말한다(어디서 접근 할 수 있고 어디까지 영향을 미치는 지를 결정하는 것). 자바스크립트에서는 전역 스코프와 지역 스코프가 있다. 1-1. 전역 스코프 함수 외부에서 선언 되는 경우로 어디에서든 접근이 가능하다. 1-2. 지역 스코프 지역스코프는 함수 스코프와 블록 스코프로 구분할 수 있다. 함수 스코프는 함수 내 어디에서든 접근이 가능하며 함수 외부에서는 접근이 불가능하다. 블록 스코프는 이보다 좀 더 작은 범위로 if, for 등에서 {} 로 구분되는 부분이다. function sayHello () { let hello = 'Hello!' console.log(hello) if(true){ let bye = 'Bye!'; } console.lo..