Skip to content

Latest commit

 

History

History
75 lines (44 loc) · 3.76 KB

File metadata and controls

75 lines (44 loc) · 3.76 KB

프로그래밍 🔥

프로그래밍이란 뭐라고 생각하나요?

  • 프로그래밍이란 특정 목적을 위해 설계된 알고리즘을 프로그래밍 언어를 통해 구체적인 프로그램으로 작성하는 과정이다.

컴파일러는 뭐고 인터프리터는 뭔가요?

  • 컴파일러: 특정 프로그래밍 언어를 다른 프로그래밍 언어로 옮기는 언어 번역 프로그램을 말한다.
  • 인터프리터: 프로그래밍 언어의 소스 코드를 바로 실행하는 컴퓨터 프로그램 또는 환경을 말한다.
  • 즉 컴파일러는 한번에 모든 내용을 번역, 인터프리터는 한줄씩 차근차근 번역한다는 차이점이 있다. 이로인해 속도, 실시간 디버깅 가능 여부 등의 차이가 발생한다.

자바스크립트란? 🔥

자바스크립트의 특징은 뭐가 있나요?

  • 동적이며 타입을 명시할 필요가 없는 인터프리터 언어
  • 객체지향, 함수형 프로그래밍을 모두 표현할 수 있다.
  • HTML의 내용, 속성, 스타일을 변경할 수 있다.
  • 이벤트를 처리하고 사용자와의 상호작용을 가능하게 한다.
  • 서버와 실시간 통신 기능을 제공한다.

변수 🔥

변수란 무엇인가요?

  • 데이터를 저장할 수 있는 프로그램에 의해 이름을 할당받은 메모리 공간이다.

식별자란 무엇인가요? 🔥

  • 어떤 대상을 유일하게 식별할 수 있는 이름을 말한다.

변수를 선언한다는 것은 어떤 것을 의미하나요?

  • 변수를 사용하겠다고 이름을 지어주고 데이터를 저장할 수 있는 메모리 공간을 사용하겠다고 컴퓨터에게 미리 말해놓는 행위.

var 키워드는 뭔가요?

  • 자바스크립트에서 변수를 선언하는 방법중 하나이다.
  • 전역변수 선언 방법이며 함수레벨 스코프에서 작동한다.

호이스팅이 뭔가요? 🔥🔥🔥🔥

  • 자바스크립트에서 변수나 함수를 선언했을때 변수 선언과 함수 선언이 스코프 내의 최상단에 위치되는 현상이다.

var 키워드의 문제점은 무엇이 있나요? 🔥🔥

  • 변수 선언이 호이스팅으로 최상단으로 올라갈때 var를 사용하게되면 초기화도 동시에 이루어지기 때문에 참조가 가능하며 오류가 발생하지 않고 Undefined 라는 값을 가지게 된다.

let 키워드는 var 키워드와 어떤 점이 다른가요? 🔥🔥🔥

  • let을 사용하게되면 var를 사용했을 때와 달리 오류가 발생하고 좀더 쉽게 오류를 찾아낼 수 있다.

TDZ 🔥🔥🔥

  • temporal dead zone, var나 let으로 변수를 선언했을 때 호이스팅된 위치와 선언 위치 사이에 존재하는 코드 영역을 뜻한다. let으로 선언하게되면 TDZ에서 let으로 선언한 값을 참조하게되면 오류가 발생하는것에 반해 var로 선언한 변수는 Undefined라고 표시된다.

const 키워드는 어떤 특징이 있나요? 🔥🔥

  • const로 선언된 변수는 상수의 역할을 해서 이후에 변경할 수 없게된다.

식별자 네이밍 규칙은 어떤 것들이 있나요?

  • 첫 글자는 숫자로 시작할 수 없다.
  • 예약어 키워드를 식별자로 사용할 수 없다.

네이밍 컨벤션은 어떤 것들이 있나요?

  • 함수나 변수 이름의 경우 첫 단어는 소문자로 시작하고 그 후의 각 단어는 첫글자가 대문자인 형태이다.
  • 클래스 이름의 경우 각 단어의 첫글자도 대문자를 사용한다.
  • 상수의 경우 모든 글자는 대문자이며 단어 사이는 밑줄로 구분된다.

리터럴이 뭔가요?

  • 소스 코드의 고정된 값을 나타내는 표기법이다.
  • 고정된 데이터값이고 입력의 경우 리터럴이 아니다.