본문 바로가기

프론트엔드 개발/자바스크립트3

변수와 데이터 타입 (기본형 VS 참조형) 변수란 변경 가능한 데이터가 담길 수 있는 컨테이너다. 여기서 데이터는 string, number, object 등 어떤 자바스크립트 데이터 타입이든 될 수 있다. 변수 선언하기 ES6 이전에는 변수를 선언하려면 var 키워드를 사용해야만 했는데 ES6에서 let, const가 도입되었다. var, let으로 정의된 변수 이름은 camelCase로, const로 정의된 정수 이름은 대문자로 작성하는 관례가 있다. var, let, const를 비교하면 아래 표와 같다. 키워드 스코프 호이스팅 재할당 가능 여부 재선언 가능 여부 var 펑션 스코프 O O O let 블락 스코프 X O X const 블락 스코프 X X X 그렇다면 세 가지 키워드 중에서 뭘 사용해야 할까? 보통 가능한 const를 사용하고.. 2022. 6. 18.
스코프와 호이스팅, var/let/const 비교 스코프란 스코프란 현재의 실행 컨텍스트다. 스코프에 따라 변수에 접근할 수 있는지 여부(가시성)가 정해진다. (참고로 자바스크립트에서 객체와 함수는 모두 변수다.) 스코프는 하이어라키 구조로 되어 있어서 자식 스코프는 부모 스코프에 접근할 수 있지만 그 반대는 안된다. 자바스크립트에는 세 가지 타입의 스코프가 있다. 1. 블락 스코프 (Block scope) 2. 펑션 스코프 (Function scope) 3. 글로벌 스코프 (Global scope) 블락 스코프 블락 { }을 기준으로 하는 스코프다. (함수 블락, if문, for 반복문, while 반복문) ES6(2015) 이전에는 없었는데 ES6에서 let과 const 키워드 도입과 함께 블락 스코프가 생기게 되었다. var 키워드로 정의된 변수는.. 2022. 6. 12.
JavaScript 프론트엔드 주요 개념 정리 (1) 안녕하세요? 프론트엔드 개발자 김반석입니다.본격적으로 취업을 위한 지원을 하고 있으며 프론트엔드 기술면접을 앞두고 있는데요. 평소에 당연하게 사용하던 것들도 말로 설명해보라고 하면 어떻게 설명해야 할지 막막합니다.기술면접도 대비하고 그간 배워온 내용도 제 언어로 정리할 겸 질문과 답변 형식으로 정리를 하려고 합니다.질문은 구글에서 검색한 블로그와 자료들을 참고했습니다. (감사합니다)가장 중요하다고 생각하는 JavaScript부터 시작합니다. JavaScript의 데이터 타입 JS는 기본적으로 8가지 데이터 타입이 있다. 참고로 JS는 동적 언어(dynamically typed)다. 즉, 변수의 데이터 타입이 고정이 아니고 할당하는 값에 따라 바뀔 수 있다. // no error let message = .. 2021. 3. 5.