본문 바로가기

Web/Javascript20

정규표현식 Chapter 7] 정규표현식- 정규표현식의 사전적인 의미는 특정한 규칙을 가진 문자열의 집합을 표현하는데 사용하는 형식 언어이다. - 프로그램을 작성할 때 특성상 일정한 규칙을 가진 텍스트 문자열을 사용하는 경우가 많은데 이럴때 정규 표현식을 사용하여 문자열에서 특정 내용을 찾거나 대체할 수 있다. 특히 웹 프로그래밍은 문자열을 다루는 빈도가 특히 높기 때문에 사용하는게 거의 필수적이다. - 자바스크립트는 POSIX 정규표현식에서 확장된 Perl방식을 사용한다. 이 외에도 수많은 정규표현식이 존재하지만 약간의 차이점을 제외하곤 거의 비슷하다.- 정규표현식을 실제로 사용할 때 언어마다 사용방법이 각각 다르다. 자바스크립트의 경우 정규식 리터럴('/' 로 감싸는 패턴) 이나 RegExp 생성자 함수를 이용.. 2018. 2. 28.
배열 [Chapter 5] 배열- 자바스크립트에서 배열은 연속적인 메모리 할당이되는 진짜 배열이 아니고 배열같은 특성을 지닌 객체를 제공해 주는 것이다. - 실제 배열보다 속도는 느리지만 사용하기 편리함에는 변함이 없다. - 배열 전용 유용한 메소드들이 있다. (sort, 값 추가제거, 인덱스 찾기 등..) 1] 배열 리터럴- 배열 리터럴은 타 언어 배열 선언과 마찬가지로 [] 를 사용하여 선언한다. ( var arr = []; ) - 타 언어에서의 배열은 한 배열의 구성요소가 같은 데이터타입 이여야 하지만 자바스크립트 에서는 어떠한 데이터 타입의 조합도 가능하다. [1, 'string', NaN, undefined, true, false, 10.1]... - 객체와 배열은 유사해 보이지만, 생성시 상속받는 .. 2018. 2. 28.
상속 [Chapter 5] 상속- 상속의 유용한 점은 코드를 재사용 하는 것이다. 새로만든 클래스가 기존 클래스와 매우 유사하다면 상속을 통해 다른 부분만 구현해낼수 있다 - 자바스크립트는 클래스를 기반으로 하는 상속을 지원하지 않고 프로토타입 체인을 이용하여 상속을 구현해낸다. (객체가 다른 객체로 바로 상속 된다) 이러한 상속의 구현방식으로 여러가지 패턴이 있다. 01] 의사 클래스 방식(Pseudoclassical)- 의사 클래스는 클래스처럼 행동하지만 진짜 클래스는 아니다. - 클래스가 없는 자바스크립트가 클래스 기반의 상속 방식을 흉내내는 것. - 생성자 함수를 통해서 객체를 생성해야 한다. //동물 생성자 함수 정의 var Animal = function( name ){ this.name = nam.. 2018. 2. 27.
콜백, 모듈, 커링, 메모이제이션 11] 콜백- 이름이 없어 호출하지 못하는 익명함수의 대표적인 용도가 콜백 함수다. - 콜백함수는 코드를 통해 명시적으로 호출하는 함수가 아니라어떠한 이벤트가 발생했을때, 특정 시점에 도달했을때 시스템에서 호출되는 함수다. 대체로 이벤트 핸들러가 콜백 함수로 등록되는 경우가 많다. (이벤트 핸들러는 'on + 이벤트명' 으로 지어져있다.)//페이지 로드시 호출퇼 콜백함수 window.onload = function(){ console.log('browser load~'); } //버튼 클릭시 호출될 콜백함수 document.getElementById("test").onclick = function() { console.log('button click~'); }; //HTML Test이벤트 핸들러가 아닌 .. 2018. 2. 27.
함수 - (스코프, 클로저) 06] 예외- 자바스크립트는 예외를 다룰 수 있는 메커니즘을 제공한다. 예외란 정상적인 프로그램의 흐름을 방해하는 비정상적인 사고를 말한다.(오류발생) - try~ catch 문은 try 블록 내에서 예외가 발생하면, catch 블록이 실행된다. var test_try = function(){ try{ var message = document.getElementById('message'); message.innerHTML = '테스트 메시지222'; }catch(error){ console.log('오류! '+ error); }finally{ console.log('무조건 실행할거야'); } } test_try(); 07] 기본 타입에 기능 추가- 모든 객체가 연결되어있는 prototype 에 기능(메소.. 2018. 2. 26.
함수 [Chapter 4] 함수- 함수는 실행 문장들의 집합을 감싸고 있다. - 함수는 코드의 재사용이나 정보의 구성 및 은닉화 등에 사용할 수 있고 객체의 행위를 지정하는데도 사용한다. 01] 함수 객체- 자바스트립트에서 함수는 객체이기 때문에 다른 값들처럼 사용 할 수 있다.변수, 객체, 배열 등에 저장될 수 있고, 다른 함수에 전달하는 인수로도, 반환값으로도 사용 할 수 있다. - 함수를 다른 객체와 구분 짓는 특징은 '호출' 할 수 있다는 점이다. - 객체는 Object.prototype 에 연결되지만 함수는 Function.prototype 에 연결된다. 함수객체의 prototype 속성에 함수 자체를 값으로 갖는 생성자(constructor) 속성이 있다.(생성자는 객체 생성시에 호출되며 메모리 생.. 2018. 2. 26.