본문 바로가기

분류 전체보기339

27장 배열(~slice) (모던 자바스크립트 Deep Dive) 모던 자바스크립트 Deep Dive 글 목록(스터디) https://hello-kk.tistory.com/780 희소 배열: 명시적으로 값을 할당하지 않는 요소는 생성되지 않는다. 프로퍼티의 경우는 length에 영향을 주지 않는다. Array of의 목적: 요소를 직접 배열로 생성 Array from의 목적: 이터러블 객체 또는 유사 배열 객체를 배열로 변환 유사 배열 객체 {length: , . . . } 이터러블 객체 메서드 원본 유지 원본 변경 대안 유사 메서드 맨 뒤에 요소 추가 concat spread splice 처음 요소 추가 unshift spread 맨 뒤에 요소 추가 push spread 맨 뒤에 요소 제거 pop splice splice 처음 요소 제거 shift splice spl.. 2023. 4. 22.
45장 프로미스 (모던 자바스크립트 Deep Dive) 모던 자바스크립트 Deep Dive 글 목록(스터디) https://hello-kk.tistory.com/780 ★프로미스 다시보기★ 비동기 코드를 처리할 때 콜백 헬의 문제와 해결 방법 프로미스가 갖고있는 것이 무엇일까 [[PromiseState]] [[PromiseResult]] 프로미스의 생명주기 프로미스 생성자에 파라미터로 들어가는 콜백의 파라미터는 2개 후속 메서드 then의 파라미터는 2개 Promise 인스턴스에서 resolve가 호출되면 then 메서드가 실행되고 catch 메서드는 실행되지 않는다 Promise 인스턴스에서 reject가 호출되면 then 메서드가 실행되지 않고 catch 메서드가 실행된다 Promise의 후속 메서드 then에서 return을 하게되면 반환값은? => P.. 2023. 4. 18.
12장 함수 18장 함수와 일급 객체 (모던 자바스크립트 Deep Dive) 모던 자바스크립트 Deep Dive 글 목록(스터디) https://hello-kk.tistory.com/780 ★책을 읽고 재점검해볼 내용★ 함수는 호출 가능한 객체 함수 리터럴 의미 함수 표현식==함수 리터럴 표현식 매개변수, 인자, 인수 구분하기 순수함수 비순수함수(구분되는 기준이 다른 듯 함) 일급 객체의 의미 함수 리터럴 표현식과 함수 선언문의 함수 객체 생성 시점 차이 Rest 파라미터와 arguments 객체 비교 12.1 함수란? 함수 정의 함수 호출 12.2 함수를 사용하는 이유 코드 재사용, 유지보수의 편의성, 코드의 신뢰성 => 추후 테스트 코드 작성 unit test 12.3 함수 리터럴 ★함수 리터럴이 많이 등장한다. 의미를 숙지하기★ 함수는 객체 타입의 값이다?! => Funct.. 2023. 4. 16.
19장 프로토타입[19.8절~19.14절] (모던 자바스크립트 Deep Dive) 모던 자바스크립트 Deep Dive 글 목록(스터디) https://hello-kk.tistory.com/780 지난 19.7 까지가 복잡했고, 이번 내용은 지난 내용을 잘 이해하고 있다면 오히려 쉽게 읽을 수 있다. instanceof 연산자: 객체(의 프로토타입 체인) instanceof 생성자함수(의 prototype에 바인딩 된 객체) in 연산자: 프로퍼티 in 객체(의프로토타입 체인상에 있는 모든 프로퍼티를 확인) 19.8 오버라이딩과 프로퍼티 섀도잉 프로토타입 프로퍼티와 같은 이름의 프로퍼티를 인스턴스에 추가한다면, 프로토타입의 프로퍼티에 덮어써지는게 아니라, 인스턴트 프로퍼티로 추가된다. => 섀도잉: 상속 관계에 의해 프로퍼티가 가려지는 현상. 오버라이딩: 재정의 오버로딩: 함수명은 같지.. 2023. 4. 13.
[헷갈린 내용 정리] 19장 프로토타입 (모던 자바스크립트 Deep Dive) 모던 자바스크립트 Deep Dive 글 목록(스터디) https://hello-kk.tistory.com/780 19장 프로토타입 (모던 자바스크립트 Deep Dive) https://hello-kk.tistory.com/787 프로토타입 단원을 읽으면서... "내가 그린 구름그림은 새털구름 그린 구름그림이고, 네가 그린 구름그림은 깃털구름 그린 구름그림이다."가 생각난건 나 뿐만이 아닐 것으로 생각된다.. 그래서, 핵심 단어들을 모아 정리했다. 단어해석의미, 기능예시프로토타입1. 프로토타입 객체 2. ≒ 부모 객체- 어떤 객체의 상위(부모) 역할을 하는 객체. - 다른 객체에 공유 프로퍼티를 제공1. 프로토타입을 상속 받은=>프로토타입 객체(부모 객체)를 상속 받은 2. 모든 객체는 하나의 프로토타입을.. 2023. 4. 10.
19장 프로토타입 (모던 자바스크립트 Deep Dive) 모던 자바스크립트 Deep Dive 글 목록(스터디) https://hello-kk.tistory.com/780 프로토타입 단원을 읽으면서... "내가 그린 구름그림은 새털구름 그린 구름그림이고, 네가 그린 구름그림은 깃털구름 그린 구름그림이다." 가 생각난건 나 뿐만이 아닐 것으로 생각된다.. 핵심 단어들을 모아 정리했다. https://hello-kk.tistory.com/788 자바스크립트는 클래스 기반 객체지향 프로그래밍 언어보다 효율적이며, 더 강력한 객체지향 프로그래밍 능력을 지니고 있는 프로토타입 기반의 객체지향 프로그래밍 언어다 책에서 나타낸 문장은 3가지를 말하는 듯 하다. 아마 결국 이해 할 내용이지 않을까? 1. 클래스 기반 ↔ 프로토타입 기반 2. 자바스크립트는 객체 지향 프로그래밍.. 2023. 4. 10.
24장 클로저 (모던 자바스크립트 Deep Dive) 모던 자바스크립트 Deep Dive 글 목록(스터디) https://hello-kk.tistory.com/780 클로저를 이해하기 전에, 짧게 영상으로 주요 내용 보고 정리 https://hello-kk.tistory.com/779 클로저 : 함수와 그 함수가 선언된 렉시컬 환경의 조합 실행 컨텍스트 단원을 하고 와서 그런지 대략적으로 이해는 할 수 있지만 위의 '클로저' 정의는 딱 와닿지 않았다. 구체적인 예시도 떠오르지 않은 상태. 렉시컬 환경의 조합? 외부 렉시컬 환경에 대한 참조를 말하는 건가? 위의 문장에서 이해 해야 할 부분은 3가지로 보인다. 1. 함수와 2. 그 함수가 선언된 렉시컬 환경의 3. 조합 "만약 innerFunc 함수가 outerFunc 함수의 내부에서 정의된 중첩 함수가 아니.. 2023. 4. 5.
모던 자바스크립트 Deep Dive(스터디) 디스코드와 노션으로 운영되는 스터디에 참여하고 있습니다. 주 2회 온라인으로 만나고, 궁금한 점, 회고 등에 대해 이야기합니다. 핵심 단원 중, 관심있는 단원을 투표로 선정하고 선정된 단원들 중 관련있는 단원을 모아 학습합니다. 퀴즈를 만들고, 내용을 정리하고, 퀴즈를 풀어옵니다. [2023.03.28] 스터디에 합류 [2023.03.30] 23장 실행 컨텍스트 https://hello-kk.tistory.com/762 [2023.04.03] 13장 스코프 14장 전역 변수의 문제점 15장 let, const 키워드와 블록 레벨 스코프 https://hello-kk.tistory.com/769 [2023.04.06] 24장 클로저 https://hello-kk.tistory.com/781 [2023.04.. 2023. 4. 5.
클로저(Closure) 코딩앙마: 자바스크립트 중급 강좌 #11 클로저(Closure) 5분만에 이해하기 클로저 : 함수와 렉시컬 환경의 조합. 함수가 생성될 당시의 외부 변수를 기억. 생성 이후에도 계속 접근이 가능하다. function makeAdder(x){ return function(y){ return x+y; } } const add3 = makeAdder(3); console.log(add3(2)); const add10 = makeAdder(10); console.log(add10(5)); console.log(add3(1)); add3과 add10은 동일하게 makeAdder()함수를 참조하지만, makeAdder(10)을 호출한 이후에도, add3에는 아무런 변화가 없다. add10과 add3은 서로 다른 환.. 2023. 4. 5.