State는 props처럼 App 컴포넌트의 렌더링 결과물에 영향을 주는 데이터를 갖고 있는 객체지만,props는 (함수 매개변수처럼) 컴포넌트에 전달되는 반면 state는 (함수 내에 선언된 변수처럼) 컴포넌트 안에서 관리된다는 차이가 있다.props를 사용했는데도
각종 기기에 쓰이는 SD카드가 그 대표적인 예중 하나이다.부품의 수가 줄고많은 회로가 부품 내부로 들어가고배선이 미세해지고연결 핀의수가 많아지고 훨씬 조밀하게 배치되었다1990년대 pc기판의 앞면과 뒷면(인쇄 회로 기판의 버스들)논리 게이트는 한 두개의 입력 값을 바탕
컴퓨터는 크게 논리적, 물리적 측면에서 접근할 수 있음논리적 측면(무얼 하는가?): 컴퓨터는 어떠한 일을 하는가?, 그 일을 하기 위해 각 부분이 어떻게 구성되고 역할을 수행하는가?물리적 측면(어떻게 만들어지는가?): 컴퓨터 내 각 부분이 어떻게 물리적으로 만들어지고
React나 Vue 같은 SPA 라이브러리 또는 프레임워크를 사용하게 되면 클라이언트 사이드의 라우팅을 사용하게 됩니다. 즉, 별다른 설정 없이 서브 디렉토리 형태의 URL로 접근하게 되면 S3 내에 있는 해당 파일을 찾게 되기 때문에, 의도한 바와 다르게 접근할 수
나에겐 지옥 같은 주특기 주차가 시작되었는데 너무 정신이 없어서 TIL 작성을 계속 미루다가 지금에서야 이렇게 작성하게 되었다. 앞으로는 매일 1 TIL을 작성하도록 노력해야겠다..; 오늘은 CS 스터디가 캔슬되었는데 내일은 CS 스터디가 두배다 ^^ 아이 신나 내일부터 조원들과 개인 과제를 같이 시작하기로 했다. 다행히 모르는 것들을 바로바로 물어볼 수...
ES라는 것은 'Javascript의 표준 규격'을 의미하는데, 이것이 탄생한 배경에는 '브라우저 전쟁'이라고 하는 웹 브라우저 시장에서의 점유율 싸움이 있었다. 넷스케이프 사에서 개발한 Javascript가 선풍적인 인기를 끌기 시작하자 마이크로소프트 사에서도 IE
양방향 바인딩을 사용하는 경우 리렌더링이 어떻게 이루어질 지 그려보세요.(부모 컴포넌트 A와 자식 컴포넌트 B가 있음을 가정하고 그려봅시다.)양방향 바인딩의 경우, 사용자의 입력값이 곧바로 코드 상의 변수에 바인딩 될 수 있지만 단방향바인딩의 경우 적절한 Event를
콘솔에 찍힐 b 값을 예상해보고, 어디에서 선언된 “b”가 몇번째 라인에서 호출한 console.log에 찍혔는지, 왜 그런지 설명해보세요.주석을 풀어보고 오류가 난다면 왜 오류가 나는 지 설명하고 오류를 수정해보세요.a가 함수 hi 안에서 선언이되었으며 스코프 밖에서
자바스크립트 코드가 실행되는 환경을 의미한다.자바스크립트에서 대표적으로 두 가지 타입의 Execution context가 있다.실행할 코드에 제공할 환경 정보들을 모아놓은 객체들로자바스크립트의 동적 언어로서의 성격을 가장 잘 파악할 수 있는 개념이다.자바스크립트 엔진이
es6이전에는 변수를 선언할 때 var를 이용하여 변수를 선언하였다.var의 경우엔 function 단위의 scope를 가진다. 이는 함수안에서만 선언 될 경우에 scope를 가지는 것을 의미한다. if나 for문안에서 var를 선언할 경우 해당 변수는 scope를 i
자바스크립트는 ES6에서 도입된 let, const를 포함하여 모든 선언(var, let, const, function, function\*, class)을 호이스팅합니다. 호이스팅(Hoisting)이란, var 선언문이나 function 선언문 등을 해당 스코프의 선
참조형 데이터는 기본형 데이터와 마찬가지로 데이터 자체를 변경하려고 한다면 데이터는 변하지 않습니다. 하지만 참조형 데이터가 가변적이다라고 말하는 것은, 내부 프로퍼티를 변경할 때를 말합니다.만약 객체를 복사해서, 내부 프로퍼티를 변경하고 싶을 때, 복사한 객체를 변경
자바스크립트 객체객체란 이름(name)과 값(value)으로 구성된 프로퍼티(property)의정렬되지 않은 집합입니다.프로퍼티의 값으로 함수가 올 수도 있는데, 이러한 프로퍼티를 메소드(method)라고 합니다.자바스크립트에서는 숫자, 문자열, 불리언, undefin
객체가 아닌 데이터 유형을 말한다.NumberStringBooleanSymbol(ES6에 추가, 객체 속성을 만드는 데이터 타입)nullundefined기본형 데이터는 값을 그대로 할당한다.메모리상에 고정된 크기로 저장되며 원시 데이터 값 자체를 보관하므로, 불변적이다
자바스크립트에는 '없음'을 나타내는 값이 두가지가 있습니다. 바로 undefined와 null 입니다. 두 값의 의미는 같은 것 같지만 미세하게 다르고 사용하는 목적 또한 다릅니다.undefined의 경우 사용자가 명시적으로 지정할 수도 있지만 값이 존재하지 않을 때
실행 도중에 변수에 예상치 못한 타입이 들어와 타입에러가 발생할 수 있음동적타입 언어는 런타임 시 확인할 수 밖에 없기 때문에, 코드가 길고 복잡해질 경우 타입 에러를 찾기가 어려워 집니다.이러한 불편함을 해소하기 위해 TypeScipt나 Flow 등을 사용할 수 있습
'=='와 '===' 연산자의 주된 차이점은, 예를 들어, 숫자를 숫자 리터럴과 비교하면, '=='는 그것을 허용하지만, '===' 두 변수의 형식은 동일하지 않은 경우, 값뿐만 아니라 두 변수의 유형도 확인하므로, 허용하지 않는 것이다. 즉, '==='는 'false
문자형으로 변환 은 무언가를 출력할 때 주로 일어납니다. String(value)을 사용하면 문자형으로 명시적 변환이 가능합니다. 원시 자료형을 문자형으로 변환할 땐, 대부분 그 결과를 예상할 수 있을 정도로 명시적인 방식으로 일어납니다.숫자형으로 변환 은 수학 관련
정적 언어란 컴파일 시간에 변수의 타입이 결정되는 언어입니다. 타입 즉, 자료형을 런타임 이전에 결정하는 것입니다. 대표적인 정적 언어로는 C, C++, Java 등이 있습니다.정적 언어는 변수에 들어갈 값의 형태에 따라 자료형을 지정해주어야 합니다.컴파일 시에 자료형
배열 사용하기 배열에 엘리먼트 추가/삭제하기 기본적으로 배열의 앞과 뒤에서 엘리먼트를 추가하거나 삭제할 수 있음. .push(element) : 배열의 뒤에 엘리먼트 추가 .pop() : 배열의 뒤에서 엘리먼트 삭제하고 리턴 .shift() : 배열의 앞에서 엘리먼트