javascript 3

자바스크립트 구성 요소

자바스크립트 구성 요소 자바스크립트는 아래 세 가지가 합쳐진 것이다. 자바스크립트 코어(ECMAscript) 문서 객체 모델(DOM) 브라우저 객체 모델 (BOM) 1. 자바스크립트 코어 (ECMAScript) 자바스크립트의 핵심(Core) 기능이다. 문법, 타입, 선언문, 키워드 등 언어의 기본 수준에 해당하는 부분이다. ECMAScript 는 자바스크립트를 이루는 코어 스크립트 언어로, 웹 환경에서만 호스트 되는 언어가 아니다. 웹 환경은 그저 ECMAScript 가 호스트되는 환경들 중 하나일 뿐이다. 2. 문서 객체 모델 (Document Object Model) Document Object Model 의 표준은 W3C 에 의해 관리된다. 노드(node), 스타일, 속성, 이벤트, 위치 및 크기 ..

javascript 2019.11.26

자바스크립트 프로토타입 파헤치기

내 기준... 자바스크립트를 배우면서 제일 이해하기 어려웠던 개념 중 하나가 바로 이 프로토타입이다.진심 아무리 자료를 봐도 동영상을 봐도 도통 모르겠고 ㅜㅜ이해한 것 같은데 뒤돌면 까먹고 그래서 외울 지경까지 보고 나서야 손톱만큼 이해할 수 있었던... 그야말로 애증의 프로토타입이다.나 역시 프로토타입을 이해하기까지 정말 많은 고통의 나날을 보냈기 때문에 조금이라도 도움이 되었으면 하는 마음으로 이 글을 작성한다. 프로토타입이란?자바스크립트는 프로토타입 기반 언어이다. 자바에 클래스가 있다면 자바스크립트에는 프로토타입이 있다. ECMAScript6에 클래스 문법이 생겼지만 그렇다고 자바스크립트가 클래스 기반 언어로 바뀐 건 아니다.어쨌든 자바스크립트는 이 프로토타입으로 클래스 기반 언어의 상속이라는 것..

javascript 2018.08.01

typeof null은 왜 object일까?

typeof nulltypeof는 자바스크립트 변수의 자료형을 반환하는 연산자이다.책(인사이드 자바스크립트)에서는 null 또한 자료형으로, 객체가 아니라고 한다. 하지만 왜 typeof null은 object일까? console.log(typeof null); //object 검색해보니 null을 객체로 취급하는 설명이 보인다. 하지만 이는 틀린 설명이다.왜냐하면 null은 객체가 아니라 원시 타입이기 때문이다.null의 타입이 object로 나오는 건 수정할 수 없는 버그와도 같은데,설명을 하자면 자바스크립트의 탄생까지 거슬러 올라가야 한다.왜냐면 typeof null 버그는 자바스크립트의 첫 번째 버전의 잔재이기 때문이다. 자바스크립트의 타입 태그자바스크립트가 처음 탄생할 적에, 자바스크립트 변수의..

javascript 2018.07.18