목록2. 프로그래밍 언어 공부/JavaScript (47)
회고록 블로그
※ 필자는 초초초보자입니다. ※ 틀린 내용에 대한 피드백은 언제든지 환영합니다. 공부하고 있는 자료 : modern JavaScript tutorial https://ko.javascript.info/object-toprimitive 객체를 원시형으로 변환하기 ko.javascript.info ✅ 객체 -> 원시형 변환하기 - 객체끼리 더하거나 빼면? 자동 형 변환이 일어난다. ► 객체는 원시값으로 변환된다. - 변환 규칙 ► 객체는 논리 평가 시 true를 반환 = 객체는 숫자형이나 문자형으로만 형 변환이 일어난다. ► 수학 관련 함수를 적용할 때 숫자형으로 형 변환이 된다. ► alert 등으로 객체를 출력할 때 문자형으로 형 변환이 된다. ✅ ToPrimitive - 객체 형 변환은 세 종류로 구분..
※ 필자는 초초초보자입니다. ※ 틀린 내용에 대한 피드백은 언제든지 환영합니다. 공부하고 있는 자료 : modern JavaScript tutorial https://ko.javascript.info/symbol 심볼형 ko.javascript.info ✅ 심볼형 - 자바스크립트 가능한 객체 프로퍼티 키 : 문자형 or 심볼형 ► 숫자형, 불린형 불가 - 프로퍼티 키가 심볼형일 때 ► 유일한 식별자(unique identifier) 만들고 싶을 때 사용 ► 심볼을 만들 때 설명을 붙일 수 있다. (= 심볼 이름) "use strict"; // 심볼형 let id1 = Symbol(); let id2 = Symbol('id2'); // 심볼 이름이 id2인 심볼 // 문자형 let user1 = {}; l..
※ 필자는 초초초보자입니다. ※ 틀린 내용에 대한 피드백은 언제든지 환영합니다. 공부하고 있는 자료 : modern JavaScript tutorial https://ko.javascript.info/optional-chaining 옵셔널 체이닝 '?.' ko.javascript.info ► 스펙에 추가된지 얼마 안 된 따끈따끈한 문법(?) ✅ 옵션널 체이닝? - optional chaining - 사용방법: ?. - 프로퍼티가 없는 중첩 객체를 에러 없이 안전하게 접근할 수 있다! 💡 중첩 객체 예시 let user1 = { name: "soy", age: 1, address: { country: "KOR", city: "seoul", "street address": "123-45", }, }; ✅ 필..
※ 필자는 초초초보자입니다. ※ 틀린 내용에 대한 피드백은 언제든지 환영합니다. 공부하고 있는 자료 : modern JavaScript tutorial https://ko.javascript.info/constructor-new new 연산자와 생성자 함수 ko.javascript.info ✅ new 연산자와 생성자 함수 - 객체 리터럴 : {...} » 객체를 쉽게 만들 수 있다. - 객체 리터럴이 아니여도 객체를 생성할 수 있다. » new 연산자, 생성자 함수 ✅ 생성자 함수(constructor function) - 생성자 함수는 일반 함수와 기술적으로는 차이가 없다. - 다만 생성자 함수는 아래의 관례를 따른다고 한다. » 함수 이름의 첫 글자는 대문자 » 반드시 'new' 연산자를 붙여서 실행..
※ 필자는 초초초보자입니다. ※ 틀린 내용에 대한 피드백은 언제든지 환영합니다. 공부하고 있는 자료 : modern JavaScript tutorial https://ko.javascript.info/garbage-collection 가비지 컬렉션 ko.javascript.info ✅ 가비지 컬렉터 - 자바스크립트 엔진 내에는 가비지 컬렉터(garbage collector)가 있다. » 가비지 컬렉터는 모든 객체를 모니터링하면서 [도달할 수 없는 객체]를 삭제한다. - 그렇다면 도달 가능한 값은 무엇일까. ✅ 도달 가능한 값과 가비지 컬렉션 - 자바스크립트는 눈에 보이지 않는 곳에서 메모리 관리를 수행한다. » 도달 가능성(reachability) 이라는 개념을 사용해서 메모리 관리를 수행 » 도달 가능..
※ 필자는 초초초보자입니다. ※ 틀린 내용에 대한 피드백은 언제든지 환영합니다. 공부하고 있는 자료 : modern JavaScript tutorial https://ko.javascript.info/object-copy 참조에 의한 객체 복사 ko.javascript.info ✅ 참조에 의한 객체 복사 - 보통 복사하려고 할 때 - 원시값(문자열, 숫자 등)은 값 그대로 저장.할당되고 복사되지만 (값 복사) - 객체는 참조에 의해(by reference) 저장되고 복사된다. - 코드 예시 » 아래 코드의 변수 user에는 객체의 값이 아니라 객체가 저장된 "메모리 주소"(참조값)이 저장된다. let user = { name: "soySauce", age: 1 }; » 만약 다른 변수에 user 변수의 ..
※ 필자는 초초초보자입니다. ※ 틀린 내용에 대한 피드백은 언제든지 환영합니다. 공부하고 있는 자료 : modern JavaScript tutorial https://ko.javascript.info/object 객체 ko.javascript.info ✅ 프로퍼티 이름의 제약사항 - 객체 프로퍼티 키(프로퍼티 이름)은 제약사항이 없다. "use strict"; let obj = { true: "a", 0: "b", }; console.log(obj["true"]); // a console.log(obj[true]); // a console.log(obj["0"]); // b console.log(obj[0]); // b (숫자 0은 문자열 0으로 자동변환된다 ※ 특별한 이름 : __proto__ - 프로..
※ 필자는 초초초보자입니다. ※ 틀린 내용에 대한 피드백은 언제든지 환영합니다. 공부하고 있는 자료 : modern JavaScript tutorial https://ko.javascript.info/object 객체 ko.javascript.info ✅ 객체 - (복습) 자바스크립트에겐 8가지의 자료형이 있다. »숫자형, 문자형, 불린형 등 하나의 데이터만 담을 수 있는 자료형을 "원시형"이라고 부른다. - 키로 구분된 데이터 집합, 복잡한 개체(entity)와 같이 다양한 데이터를 담을 수 있는 자료형이 "객체형"이다. » 자바스크립트를 잘 다루려면 객체를 잘 이해해야한다. - 객체는 중괄호 {} 를 이용해서 만들 수 있으며 중괄호 안에는 "키(key): 값(value)"이 쌍으로 들어간다. » 이렇..
※ 필자는 초초초보자입니다. ※ 틀린 내용에 대한 피드백은 언제든지 환영합니다. 공부하고 있는 자료 : modern JavaScript tutorial https://ko.javascript.info/polyfills 폴리필 ko.javascript.info ✅ 폴리필(polyfill) - 구현이 누락된 새로운 기능을 메꿔주는(fill in) 역할을 한다. - 충전솜이라는 의미를 가지고 있다고 한다. → 정리 : 웹 개발에서 기능을 지원하지 않는 웹 브라우저 상의 기능을 구현하는 코드를 말한다. - 자바스크립트 끊임없이 진화하는 언어다. - 새로운 제안(proposal)이 정기적으로 등록, 분석되며, 가치가 있다고 판단되는 제안은 명세서에 등록된다. - 브라우저 등이 가지고 있는 자바스크립트 엔진, - ..
※ 필자는 초초초보자입니다. ※ 틀린 내용에 대한 피드백은 언제든지 환영합니다. 공부하고 있는 자료 : modern JavaScript tutorial https://ko.javascript.info/code-quality 코드 품질 ko.javascript.info 출처 : https://ko.javascript.info/testing-mocha 테스트 자동화와 Mocha ko.javascript.info ✅ 테스트 자동화 - 코드를 수동으로 '재실행' 하면서 테스트를 하면 무언가를 놓치기 쉽다고 한다. - 개발자는 무언가를 만들 때 머릿속에 수많은 유스 케이스(use case; '시스템을 사용하는 줄거리'라고 함)를 생각하며 코드를 작성하는데, 코드를 변경해야할 때마다 모든 유스 케이스(use cas..