목록IT 지식 기록/JavaScript 정리 (30)
쑤쑤_CS 기록장
TABLE OF CONTENTS 1. 함수 정의 1.1 함수 선언문 1.2 함수 표현식 1.3 Function 생성자 함수 2. 함수 호이스팅 3. First-class object (일급 객체) 4. 매개변수(Parameter, 인자) 4.1 매개변수(parameter, 인자) vs 인수(argument) 4.2 Call-by-value 4.3 Call-by-reference 5. 반환값 6. 함수 객체의 프로퍼티 6.1 arguments 프로퍼티 6.2 caller 프로퍼티 6.3 length 프로퍼티 6.4 name 프로퍼티 6.5 __proto__ 접근자 프로퍼티 6.6 prototype 프로퍼티 7. 함수의 다양한 형태 7.1. 즉시 실행 함수 7.2 내부 함수 7.3 재귀 함수 7.4 콜백 함..
TABLE OF CONTENTS 1. immutable vs. mutable value 2. 불변 데이터 패턴 (immutable data pattern) 2.1 Object.assign 2.2 Object.freeze 2.3 Immutable.js Immutability(변경불가성) : 객체가 생성된 이후 그 상태를 변경할 수 없는 디자인 패턴을 의미한다. 이는 함수형 프로그래밍의 핵심 원리이다. 객체는 참조(reference) 형태로 전달하고 전달 받는다. 객체가 참조를 통해 공유되어 있다면 그 상태가 언제든지 변경될 수 있기 때문에 문제가 될 가능성이 크다. 의도하지 않은 객체의 변경이 발생하는 원인의 대다수는 “레퍼런스를 참조한 다른 객체에서 객체를 변경”하기 때문이다. 이 문제의 해결 방법은 비..
TABLE OF CONTENTS 1. 객체(Object)란? 1.1 프로퍼티 1.2 메소드 2. 객체 생성 방법 2.1 객체 리터럴 2.2 Object 생성자 함수 2.3 생성자 함수 3. 객체 프로퍼티 접근 3.1 프로퍼티 키 3.2 프로퍼티 값 읽기 3.3 프로퍼티 값 갱신 3.4 프로퍼티 동적 생성 3.5 프로퍼티 삭제 3.6 for-in 문 4. Pass-by-reference 5. Pass-by-value 6. 객체의 분류 #1. 객체(Object)란? 자바스크립트는 객체(object) 기반의 스크립트 언어이며 자바스크립트를 이루고 있는 거의 “모든 것”이 객체이다. 원시 타입(Primitives)을 제외한 나머지 값들(함수, 배열, 정규표현식 등)은 모두 객체이다. 자바스크립트의 객체는 키(k..
TABLE OF CONTENTS 1. 타입 변환이란? 2. 암묵적 타입 변환 2.1 문자열 타입으로 변환 2.2 숫자 타입으로 변환 2.3 불리언 타입으로 변환 3. 명시적 타입 변환 3.1 문자열 타입으로 변환 3.2 숫자 타입으로 변환 3.3 불리언 타입으로 변환 4. 단축 평가 #1. 타입 변환이란? 자바스크립트의 모든 값은 타입이 있다. 값의 타입은 다른 타입으로 개발자에 의해 의도적으로 변환할 수 있다. 또는 자바스크립트 엔진에 의해 암묵적으로 자동 변환될 수 있다. var x = 10; // 명시적 타입 변환 var str = x.toString(); // 숫자를 문자열로 타입 캐스팅한다. console.log(typeof str); // string 개발자에 의해 의도적으로 값의 타입을 변환..
TABLE OF CONTENTS 1. 블록문 2. 조건문 2.1 if else 문 2.2 switch 문 3. 반복문 3.1 for문 3.2 while문 3.3 do while문 4. break문 5. continue문 제어문(Control flow statement)은 주어진 조건에 따라 코드 블록을 실행(조건문)하거나 반복 실행(반복문)할 때 사용한다. 일반적으로 코드는 위에서 아래 방향으로 순차적으로 실행된다. 제어문은 코드의 실행 순서를 인위적으로 제어할 수 있다 #1. 블록문 블록문(Block statement/Compound statement) : 0개 이상의 문들을 중괄호로 묶은 것으로 코드 블록 또는 블록이라고 부르기도 한다. 자바스크립트는 블록문을 하나의 단위로 취급한다. 단독으로 사용할..
#1. 표현식과 연산자 값은 표현식(다양한 방법)으로 생성할 수 있다. 표현식(expression) : 리터럴, 식별자, 연산자, 함수 호출 등의 조합을 말한다. 표현식은 평가(evaluation. 표현식을 실행하여 하나의 값을 만드는 과정)되어 하나의 값을 만든다. 즉, 표현식은 하나의 값으로 평가될 수 있는 문(statement, 문과 표현식 참고)이다. // 리터럴 표현식 10 // 식별자 표현식 sum // 연산자 표현식 10 + 20 // 함수/메소드 호출 표현식 square() 결국 평가되어 하나의 값을 만든다는 점에서 모두 동일하다. 표현식은 평가되어 결국 하나의 값이 되므로 표현식과 값은 동등한 관계, 즉 동치(Equivalent)다. 다시 말해, 표현식은 값처럼 사용할 수 있다. 이것은 ..