전체 글

전체 글

    [모던 자바스크립트 Deep Dive] 13장 스코프

    1. 스코프 모든 식별자(변수 이름, 함수 이름, 클래스 이름 등)가 자신이 선언된 위치에 의해 다른 코드가 식별자 자신을 참조할 수 있는 유효 범위 즉, 식별자가 유효한 범위 var x = 'global'; function foo () { var x = 'function scope'; console.log(x); } foo(); // ? console.log(x); // ? 이때, 위의 출력값은 function scope 아래의 출력값은 global 으로 나타난다. ❓이유 자바스크립트 엔진은 식별자 결정(어떤 변수를 참조해야 할 것인지 결정)해야하는데, 스코프를 통해 어떤 변수를 참조해야 하는지 결정한다. 코드를 시랭 할 때 코드의 문맥을 고려하게되는데, 코드가 어디서 실행되며 어떤 코드가 있는 지에 ..

    브라우저 렌더링에 대해

    https://d2.naver.com/helloworld/59361 오늘 하루만으로는 공부하기엔 양이 너무 많다. 추후 작성 예정 .. 아주 기초적인 부분임을 명시!

    [모던 자바스크립트 Deep Dive] 10장 객체 리터럴

    1. 객체란? 원시 값을 제외한 나머지 값(함수, 배열, 정규 표현식 등) 원시 값은 변경 불가능한 값이지만 객체 타입의 값은 변경 가능한 값이다. 객체는 0개 이상의 프로퍼티로 구성된 집합이며, 프로퍼티는 키와 값으로 구성된다. 2. 객체 리터럴에 의한 객체 생성 자바스크립트는 프로토타입 기반 객체 지향 언어로서 클래스 기반 객체지향 언어와는 달리 다양한 객체 생성 방법을 지원한다. - 객체 리터럴 - Object 생성자 함수 - Object.create 메서드 - 클래스(ES6) 객체 리터럴은 자바스크립트의 유연함과 강력함을 대표하는 객체 생성 방식이다. 숫자 값이나 문자열을 만드는 것과 유사하게 리터럴로 객체를 생성한다. 3. 프로퍼티 객체는 프로퍼티의 집합이며, 프로퍼티는 키와 값으로 구성된다. ..

    [모던 자바스크립트 Deep Dive] 09장 타입 변환과 단축 평가

    1. 타입 변환이란? 자바스크립트의 모든 값은 타입이 있다. 개발자가 의도적으로 타입을 변환하는 것을 명시적 타입 변환 또는 타입 캐스팅이라고 한다. var x = 10; // 명시적 타입 변환 var str = x.toString(); // 숫자를 문자열로 타입 캐스팅한다. console.log(typeof str); // string // 변수 x의 값이 변경된 것은 아니다. console.log(typeof x, x); // number 10 개발자의 의도와는 상관없이 자바스크립트 엔진에 의해 암묵적으로 타입이 자동 변환되는 것을 암묵적 타입 변환 또는 타입 강제 변환이라고 한다. var x = 10; // 암묵적 타입 변환 // 숫자 타입 x의 값을 바탕으로 새로운 문자열 타입의 값을 생성해 표현..

    [모던 자바스크립트 Deep Dive] 08장 제어문

    1. 블록문 0개 이상의 문을 중괄호로 묶은 것 2. 조건문 조건문은 조건식의 결과에 따라 코드 블록의 실행을 결정한다. 2.1. if ...else 문 if (조건식1){ // 조건식1이 true 일때 실행 } else if (조건식2){ // 조건식2가 true일때 실행 } else { // 전부 false이면 실행 } 2.2. switch 문 switch (표현식) { case 표현식1: /* code */ break; default: break; } 3. 반복문 반복문은 조건식의 평가 결과가 참인 경우 코드 블록을 실행한다. 3.1. for 문 for(int i=0; i < 2; i++){ console.log(i); } 3.2. while 문 while (count < 3) { console.l..

    [모던 자바스크립트 Deep Dive] 07장 연산자

    1. 산술 연산자 증가/감소(++/--) 연산자는 위치에 의미가 있다. 뒤에 위치한 경우 먼저 다른연산을 수행하고 피연산자값을 증가/감소 시킨다. var x = 5, result; // 선대입 후증가 (Postfix increment operator) result = x++; console.log(result, x); // 5 6 // 선증가 후대입 (Prefix increment operator) result = ++x; console.log(result, x); // 7 7 // 선대입 후감소 (Postfix decrement operator) result = x--; console.log(result, x); // 7 6 // 선감소 후대입 (Prefix decrement operator) resu..