프로그래밍 언어/javascript 8

자바스크립트 객체 안에 키 있는지 확인

객체안에 키가 있는지 확인하기 위해서는 크게 2가지 방법이 있다. hasOwnProperty 와 in 을 사용하는 방법이다. 이 둘의 차이점은 prototype의 내용까지 참조하는지 않하는지에 대한 차이이다. function Person(){ this.name = 'K';}Person.prototype.eyes = 2; var k = new Person(); console.log(k.hasOwnProperty('name')); // trueconsole.log('name' in k); // true console.log(k.hasOwnProperty('eyes')); // falseconsole.log('eyes' in k); // true console.log(('name' in k) && !k.has..

Javascript - 브라우저 객체 모델

브라우저 객체 모델은 웹 브라우저와 관련된 객체의 집합이다.Window 객체 밑에 Location객체, navigator객체, history객체, screen객체, document객체 가 존재한다. 아래 그림은 각 객체가 담당하는 구간을 표시한 그림이다.Screen객체는 화면 전체를 관리한다. 그 밑으로 웹 브라우저와 관련된 객체인 Navigator객체가 존재한다. History객체는 브라우저의 뒤로가기 앞으로 가기와 같은 기록에 관련된 객체이고 Location은 URL 주소와 관련된 객체이다. 마지막으로 Document 객체는 브라우저의 내용인 HTML문서와 관련된 객체이다. * 새로운 window 객체 생성opne(URL, name, features, replace)window.open() 을 통하여..

[nodejs] Sublime Text jade highlight을 위한 플러그인 추가

NodeJS에서 view 엔진으로 jade를 사용할 때 Highlight기능이 없어서 읽기 불편하였다. Sublime Text 편집기를 이용하여 Highlight기능을 추가하자. 먼저 편집기를 실행시키고 메뉴에서 Preferences > Browse Packages...를 선택한다. 윈도우 폴더가 열리고 우클릭하여 git bash를 통해 소스코드를 다운받는다. git clone https://github.com/miksago/jade-tmbundle.git Jade를 실행하여 소스를 다운받는다. 다운이 완료되면 jade 파일을 열고 ctr+shift+p 를 누른다음 jade를 입력한다.Set Syntax:jade를 선택하면 highlight기능이 활성화 된다.

HTML 이란

HTML(Hyper Text Markup Language) 웹페이지를 만들기 위한 지배적인 마크업 언어이다. 마크업 언어란 태그 드을 이용하여 문서나 데이터의 구조를 명기하는 언어의 한 가지이다. http://www.w3schools.com/html/ 위의 사이트는 HTML 과 CSS, Javascript를 기초부터 설명해 주고 있다. 영어로 되어 있어서 읽기 어렵다는 선입견이 있을수 있으나 천천히 보면 쉬운 영어로 되어있다. 구글 번역을 사용해도 상관없다. 기본적인 단어 Element content 태그는 Element가 무슨내용인지를 설명한다. 보통 시작태그와 끝태그가 같이 쓰이며 한 쌍을 이루고있다. 시작태그에는 Attributes 가 올 수 있다. Attributes는 name="value" 와 ..

SAX (Simple API for XML) - 이벤트 지향 모델

SAX는 XML를 위한 Simple API의 표준으로 XML 문서를 처리하기 위해 DOM 대신 사용할 수 있는 대안이다. DOM에 비해 단순한 인터페이스이며, 처리해야 할 파일이 많거나 매우 큰 경우에 적합하지만 데이터 내용을 조작할 수 있는 기능은 상대적으로 적다. SAX는 XML 문서를 하나의 긴 문자열 본다. 문자열을 앞에서부터 차례로 읽어가면서 정보를 받아들인다. 문자열을 읽으면서 계속 event를 발생시키고, 프로그래머는 이런 event 에 알맞게 프로그램을 작성해 준다. 문서를 훑어 내려가면서 읽기 때문에 효율적이다. DOM 보다는 사용이 어렵고, Data의 수정이 불가능하다. - SAX의 특징 ▪ 큰 문서를 효율적으로 분석하기 위해서 사용한다. ▪ 이벤트가 발생하면 그에 해당하는 Data를 ..

DOM (Document Object Model) - 객체 지향 모델

DOM은 문서 객체 모델의 약어로 HTML과 XML 문서를 위한 API(Application Prog ramming Interface)로서 문서의 물리적 구조와 문서가 접근되고 다루어지는 방법을 정의한다. DOM은 XML 문서를 하나의 Tree 구조로 본다. Element 가 Element에 포함되어 있는것은, 하위의 Tree 로 인식하고, 동등한 깊이에 있는 것은 형제 Tree 로 인식 하는 형태이다. 파서가 모든 이벤트들을 잡아서 그 결과를 메모리상에 트리 형태로 만들고 APPLICATION이 이 결과를 이용하도록 한다. - DOM의 특징 ▪ XML문서를 메모리상에 올려놓은 다음 DATA를 찾아 들어가는 방식을 사용한다. ▪ 큰 문서일 경우 무조건 다 읽기 때문에 Load 시간이 걸리거나 메모리를 낭..

파서란?(Parser)

♦ 파서(Parser)란?파서(parser)란 Compiler의 일부로서 원시 프로그램의 명령문이나 온라인 명령문, HTML 문서 등에서 Markup Tag 등을 입력으로 받아들여서 구문을 해석 할 수 있는 단위로 여러 부분으로 분할해 주는 역할을 한다. 즉, Compiler나 Interpreter에서 원시 프로그램을 읽어 들여, 그 문장의 구조를 알아내는 구문 분석(parsing)을 행하는 프로그램 이다. ♦ 파싱(Parsing) 형태 - DOM & SAX DOM 과 SAX란? 하나의 API 로서, XML 문서를 구조화시켜서 XML 문서를 원하는 방법으로 활용할 수 있게 해준다. DOM이나 SAX는 XML 문서에 있는 Data를 효과적으로 다루기 위해서 필요하다. 특정한 node 에 있는 Data만 가..