본문 바로가기

2018/0912

[양재동코드랩] 자바스크립트 강의 2일차 - Unicode, String UnicodeES6에 유니코드 관련 프로퍼티와 메소드 추가유니코드는 U+0031 형태로 표현코드 포인트0031이 코드 포인트 또는 문자 코드로 알려져있음코드 포인트 값으로 문자/기호/이모지/아이콘 등 표현4자리 이상의 UTF-16 진수 형태110만개 이상 표현 가능plane : 코드 포인트 전체를 17개 평면(plane)으로 나눔하나의 plane은 65535개첫번째 plane을 BMP(Basic Multillingual Plane)일반적인 문자가 여기에 속함euc-kr은 사용하면 안됨.해외에서는 깨진 문자열로 표시될 수 있음유니코드 이스케이프 시퀀스\x31\x32를 유니코드로 작성한 형태\u0031\u0032유니코드 코드 포인트 이스케이프\u{1f418} 과 같은 형태는 ES6에서 처음 제시ES5에서 호.. 2018. 9. 8.
[양재동코드랩] 자바스크립트 강의 2일차 - Number Number자바스크립트는 IEEE 754에 정의된 double-precision floating-point format numbers로 숫자 표시변수 생성 시 타입 지정이 없는 자바스크립트는 엔진이 알아서 소수인지 정수인지 판단64비트 유동 소수점 형태로 수를 표시RGB 표현의 경우에는 1바이트만으로도 충분하게 표현이 가능한데 64비트는 8바이트이기 때문에 7바이트가 낭비됨이를 방지위해 typed array가 등장함숫자 표현의 경우에는 typed array 사용 권장safe integer란지수(e)를 사용하지 않고 나타낼 수 있는 값까지만 표현Number.MAX_SAFE_INTEGERNumber.MIN_SAFE_INTEGER2의 53승 보다 큰 값(Number.MAX_SAFE_INTEGER)의 경우 지수.. 2018. 9. 8.
[양재동코드랩] 자바스크립트 강의 1일차 - Object ObjectObject.is()오브젝트의 비교가 목적이 아니라 값의 비교가 목적임== : 타입은 비교하지 않고 값만 비교 (사용 권장하지 않음)=== : 값과 값 타입 모두 비교Object.is()와 === 차이+0 === -0은 true지만 Object.is()는 false사람 입장에서는 같다고 생각할 수 있지만 기계적으로는 틀림음/양 표현을 하는 비트 플래그 값이 다름NaN === NaN은 false, Object.is()는 true=== 비교로는 문제가 있음NaN도 값인데 ===로 비교 시 false라는 것은 잘못됨Object.assign()첫번째 인자의 오브젝트에 두번째 인자를 복사String의 경우 분할되어 배열 형식으로 들어감프로퍼티 디스크립터는 복사하지 않음오브젝트에 오브젝트를 할당하기 위한.. 2018. 9. 1.
[양재동코드랩] 자바스크립트 강의 1일차 - for of for-of이터러블 오브젝트 반복Symbol.iterable이 존재해야 가능예제for(const value of [10, 20, 30]) { console.log(value); }NodeList 엘리먼트를 하나씩 반복하여 전개예제const nodes = document.querySelectorAll("li"); for(const node of nodes) { console.log(node.textContent); }Node는 자바스크립트 영역이 아닌 DOM 영역자바스크립트는 웹을 표현하기 위한 각 요소들(HTML, CSS, DOM 등)을 통합해서 처리할 수 있는 아키텍처를 가지고 있음for-in과 for-of의 차이For-in : 오브젝트에서 열거 가능한 프로퍼티가 대상For-of : 이터러블 오브젝트가.. 2018. 9. 1.