본문 바로가기

코드잇 스프린트 6기/JS Q.R 스터디21

[JS Q.R 스터디] 2번째 모임 질문 QnA 최종 수정 : 2024-04-18 JS Q.R 질문 QnA 1. 변수가 필요한 이유는 무엇이며, 값이 재할당 될 경우 자바스크립트 엔진은 어떤 일을 수행하나요? -> 변수는 값이 저장되는 위치를 가리키는 값에 대한 이름이다. 값들을 구분하기 위한 식별자라고도 부른다. 값이 재할당되면, 기존에 가리켰던 값은 사용하지 않게 되므로, 자바스크립트 엔진은 가비지 콜렉터로 메모리에서 자동 해제한다. 하지만 언제 해제될지는 예측할 수 없다.. 2. var, let, const 키워드로 선언한 변수들의 특징은 무엇인가요? -> var 키워드로 선언한 변수는 함수 레벨 스코프를 갖으며, 변수의 호이스팅이 발생한다. 또한, 변수의 선언과 초기화가 별도로 이루어지며, 처음 선언됐을 때는 undefined가 할당된다. 이후.. 2024. 4. 18.
[JS Q.R 스터디] 타입 변환과 단축 평가 최종 수정 : 2024-04-18 9장. 타입 변환과 단축 평가 1. 타입 변환이란? 모든 값에는 타입이 있다. 개발자가 의도적으로 타입을 변환하는 것을 명시적 타입 변환(explicit coercion) 또는 타입 캐스팅(type casting)이라 한다. 반면, 의도와는 상관없이 표현식을 평가하는 도중 자바스크립트 엔진에 의해 타입이 자동 변환되기도 한다. 이를 암묵적 타입 변환(implicit coercion) 또는 타입 강제 변환(type coercion)이라 한다. 타입 변환이란 기존 원시 값을 사용해 다른 타입의 새로운 원시 값을 생성하는 것이다. 명시적 타입 변환은 타입을 변경하겠다는 개발자의 의지가 코드에 명백히 드러나지만. 암묵적 타입 변환은 자바스크립트 엔진이 표현식을 에러 없이 평가하.. 2024. 4. 18.
[JS Q.R 스터디] 데이터 타입 최종 수정 : 2024-04-17 6장. 데이터 타입 값의 종류인 data type, 줄여서 '타입'이라고도 한다. 자바스크립트의 모든 값은 데이터 타입을 갖는다. 데이터 타입은 크게 원시 타입(primitive type)과 객체 타입(object/reference type)으로 분류할 수 있다. 구분 데이터 타입 설명 원시 타입 number 숫자(정수와 실수) string 문자열 boolean 논리적 참(true)와 거짓(flase) bigInt undefiend var 키워드로 선언된 변수에 암묵적으로 할당되는 값 null 값이 없다는 것을 의도적으로 명시할 때 사용하는 값 symbol 객체 타입 객체, 함수, 배열 등 데이터 타입은 왜 필요할까? 값은 메모리에 저장하고 참조할 수 있어야 한다. 메모.. 2024. 4. 18.
[JS Q.R 스터디] 디스트럭처링 할당 최종 수정 : 2024-04-15 36장. 디스트럭처링 할당 디스트럭처링(destructuring assignment, 구조 분해 할당)은 구조화된 배열과 같은 이터러블 또는 객체를 destrcuturing(비구조화)하여 1개 이상의 변수에 개별적으로 할당하는 것을 말한다. 배열과 같은 이터러블 또는 객체 리터럴에서 필요한 값만 추출하여 변수에 할당할 때 유용하다. 1. 배열 디스트럭처링 할당 배열의 각 요소를 배열로부터 추출하여 1개 이상의 변수에 할당한다. 할당의 대상은 이터러블이어야 하며, 할당 기준은 배열의 인덱스다. 즉, 순서대로 할당된다. const arr = [1, 2, 3]; const [one, two, three] = arr; console.log(one, two, three); // .. 2024. 4. 15.
[JS Q.R 스터디] 스프레드 문법 최종 수정 : 2024-04-15 35장. 스프레드 문법 스프레드 문법(spread syntax, 전개 문법) ...은 하나로 뭉쳐 있는 여러 값들의 집합을 펼쳐서 개별적인 값들의 목록으로 만든다. 스프레드 문법의 결과물은 값으로 사용할 수 없다. console.log(...[1, 2, 3]); // 1 2 3 console.log(...'Hello'); // h e l l o console.log(...new Map([['a', '1'], ['b', '2']]); // ['a', '1'] ['b', '2'] console.log(...new Set([1, 2, 3]); // 1 2 3 1. 함수 호출문의 인수 목록에서 사용하는 경우 var arr = [1, 2, 3]; const max = Math.m.. 2024. 4. 15.