JavaScript(13)
-
자바스크립트 개발자라면 알아야할 33가지 개념 #13 DOM 이해하기
문서 객체 모델(DOM) 브라우저의 렌더링 엔진은 웹문서를 로드한 후, 파싱 하여 웹 문서를 브라우저가 이해할 수 있는 구조로 구성하여 메모리에 적재하는데 이를 DOM이라 한다. 문서 객체 모델(Document Object Model, DOM)은 웹 페이지의 객체 지향 표현이며, 자바스크립트와 같은 스크립팅 언어를 이용해 DOM을 수정할 수 있다. document 객체는 페이지의 기본 ‘전입점’ 역할을 한다. document 객체를 이용해 페이지 내 무엇이든 변경할 수 있고, 원하는 것을 만들 수도 있다. DOM은 자바스크립트를 위한것인가? DOM은 프로그래밍 언어와 독립적으로 디자인되었다. 때문에 문서의 구조적인 표현은 단일 API를 통해 이용 가능하다. DOM의 구현은 어떠한 언어에서도 가능하다. 아..
2022.10.25 -
자바스크립트 개발자가 알아야할 33가지 #12 비트연산 실제로 활용하기 !!
그냥 제이크 님의 블로그 글을 한번 읽어보고 이런 게 있구나 생각하면 될 것 같아 비트 연산자에 대해 간략히 정리를 했다. (개인적인 판단) 비트 연산자 (bitwise operator) 비트 연산자(bitwise operator)는 인수를 32비트 정수로 변환하여 이진 연산을 수행한다. 또한, 비트 단위로 전체 비트를 왼쪽이나 오른쪽으로 이동시킬 때도 사용한다. & 대응되는 비트가 모두 1이면 1을 반환함.(비트 AND연산) ^ 대응되는 비트가 서로 다르면 1을 반환함 (비트 XOR연산) ~ 비트를 1이면 0으로, 0이면 1로 반전시킴 (비트 NOT 연산) 부호를 유지하면서 지정한 수만큼 비트를 전부 오른쪽으로 이동시킴.(right shift 연산) >>> 지정한 수만큼 비트를 전부 오른쪽으로 이동시키..
2022.10.24 -
자바스크립트 개발자가 알아야할 33가지 #11 V8엔진이 JS를 기계코드로 바꾸는 방법
어제부터 갑자기 웹에서 티스토리가 안 들어가져서 당연히 카카오 사태 때문에 발생한 오류로 인식하고 하염없이 기다리는중 너무 복구가 안돼 오픈 채팅방을 찾아가 질문을 하니 나만 안되는 것이었다. 나의 문제인 점을 인지하고 먼저 쿠키를 싹 정리했는데 첫 번째 조치 시도 만에 해결이 되었다........ 우선 #11에서의 내용은 간략하게만 알고있었는데 제이크 님의 문서를 읽다 보니 좀 더 딥하게 알아보고 싶은 욕구가 생겨 탐구를 해보았다. v8엔진에 대해 알아보기전에 일반적으로 소스코드는 어떤 원리로 실행되는지에 대해 알아보자 코드 실행의 기본 원리 프로그래밍 언어로 코드를 작성한다. 인터프리팅, 컴파일 등의 과정을 통해 0,1로 이루어진 기계어로 변환된다. 0,1로 이루어진 기계어 코드가 ‘메모리’라는 곳에..
2022.10.23 -
자바스크립트 개발자가 알아야할 33가지 #10 스케줄링:setTimeout과 setInterval
일정 시간이 지난 후에 원하는 함수를 예약 실행할 수 있게 하는 것을 ‘ 호출 스케줄링(scheduling a call)이라고 한다. 호출 스케줄링을 구현하는 방법은 두 가지가 있다. setTimeout을 이용해 일정 시간이 지난 후에 함수를 실행하는 방법 setInterval을 이용해 일정 시간 간격을 두고 함수를 실행하는 방법 setTimeout 문법: let timerId = setTimeout(func|code, [delay], [arg1], [arg2], ...) 매개변수: func | code 실행하고자 하는 코드로, 함수 또는 문자열 형태이다. 대개는 이 자리에 함수가 들어간다. 하위 호환성을 위해 문자열도 받을 수 있게 해 놓았지만 추천하진 않는다. delay 실행 전 대기 시간으로, 단위..
2022.10.20 -
자바스크립트 개발자가 알아야할 33가지 #8 IIFE마스터하기
IIFE 즉시 실행 함수 표현(IIFE, Immediately invoked Function Expression)**은 정의되자마자 즉시 실행되는 Javascript Function을 말한다. (function () { statements })(); Self-Executing Anonymous Function으로 알려진 디자인 패턴이다 크게 두 부분으로 구성된다. (() Grouping Operator)로 둘러싸인 익명함수(Anonymous Function)이다. 전역 스코프에 불필요한 변수를 추가해서 오염시키는것을 방지 private변수처럼 사용할 수 있는 효과 즉시 실행 함수를 생성하는 괄호 ()이다. 아래 함수는 즉시 실행되는 함수 표현이다. 표현 내부의 외부로부터의 접근이 불가능하다. (funct..
2022.10.19 -
자바스크립트 개발자가 알아야할 33가지 #표현식(Expression)과 문장(Statement)
이 글을 거의 다 읽었을 때쯤에는 아래의 이미지의 코드가 어떻게 동작하는지 왜 동작하는지에 대해서 자세히 설명할 수 있게 될 것이다. {} + 1 // 1 {2} + 2 //2 {2+2} + 3 // 3 {2+2} -3 // -3 자바스크립트에는 대표적인 2가지 문법적 카테고리가 있다. Statements(문장) Expressions(표현식) 표현식(Expressions) 값으로 평가될수 있는 문 // 리터럴 표현식 10 // 식별자 표현식 sum // 연산자 표현식 10 + 20 // 함수/메소드 호출 표현식 square() 표현식(Expression)은 리터럴, 식별자, 연산자, 호출 등의 조합을 말한다. 표현식은 평가 되어 하나의 값을 만든다. 평가? evaluation 표현식을 실행하여 하나의 값..
2022.10.19