컴파일 언어는 c, c++, java 등의 언어가 대표적이다.
특징은 소스 코드를 실행기 전에 먼저 기계어로 번역하고 실행한다.
여기서 번역하는 행위를 컴파일이라 하며 컴파일을 수행하는 소프트웨어를 컴파일러라 한다.
이는 컴파일하는 데에는 시간이 걸리지만 실행되는 속도는 빠르다.
인터프리터는 javascript, python, perl 등이 대표적이다.
특징은 한줄마다 기계어로 바로 번역해서 실행한다.
프로그램을 번역해서 실행시키는 소프트웨어를 인터프리터라고 한다.
한 줄씩 번역하며 실행하기에 컴파일 언어보다 처리속도가 느린 점이 있다.
특징
1. 자바스크립트는 인터프리터 언어다. JIT 컴파일러 때문에 실행 속도가 느리지 않다.
2. 프로토타입 기반 언어
3. 함수가 일급 객체이다. 이로 인해 함수를 인자로 넘길 수 있다.
4. 함수가 클로저를 정의
데이터 타입
1. 원시형 - 숫자, 문자열, 논리 값, 특수 값, symbol
2. 객체형 - 원시형을 제외한 나머지.
특수 값
1. null - 아무것도 없음을 나타낸다
2. undefined - 정의되지 않은 상태
undefined 발생
1. 값을 할당하지 않은 변수
2. 없는 객체의 프로퍼티를 가져오려 할 때
3. 없는 배열의 요소를 가져올 때
4. 아무것도 반환하지 않는 함수가 반환하는 값
5. 함수를 호출했을 때 전달받지 못한 인수의 값
아래는 각각의 예이다.
'갬발자의 프로그래밍 > Javascript' 카테고리의 다른 글
객체 (0) | 2020.01.08 |
---|---|
템플릿과 symbol 알아보기 (0) | 2020.01.05 |
즉시실행함수, Closure (0) | 2019.12.24 |
this의 참조 (0) | 2019.12.24 |
prototype (0) | 2019.12.23 |
댓글