091

[JavaScript] 기초 문법(토큰, 자료형 및 동적 프로그래밍 언어,변수선언방식) 본문

Programming Language/JavaScript

[JavaScript] 기초 문법(토큰, 자료형 및 동적 프로그래밍 언어,변수선언방식)

공구일 2024. 10. 15. 12:00
728x90

01. 토큰

- 소스 코드에서 의미를 가지는 가장 작은 단위

-> 식별자(Identifier) : 변수,함수, 클래스 등의 이름을 지정하는 데 사용, lower camel case 형식으로 변수 이름,함수 이름, pascal case 형식으로 클래스 이름을 작성함

 *식별자 생성 규칙 - 키워드 사용불가, 특수문자 _와 $만 허용, 숫자시작 불가능, 공백 입력 불가

-> 키워드(Keywords) : 자바스크립트에서 특별한 의미를 가지며 특정 작업을 수행하는 데 사용되는 예약어

-> 리터럴(Literals) : 직접적으로 사용되는 값

-> 연산자(Operators) : 값을 조작하거나 비교하는데 사용하는 기호

-> 구분자(Delimiters) : 코드의 구조를 정의하는 데 사용되는 기호 (ex) 괄호, 세미콜론, 콜론

 

02. 자료형과 동적 프로그래밍 언어

- 동적 프로그래밍 언어는 프로그램 실행 중에 변수의 타입을 동적으로 결정할 수 있는 언어, 타입을 명시적으로 선언할 피료가 없으므로 코드 실행 중에 타입이 변경됨 (ex) JavaScript, Python, Ruby, PHP, Rerl

- 자바 스크립트의 자료형은 크게 원시 자료형(Primitive Data Types)객체 자료형(Object Data Types)으로 나눠짐

원시 자료형 기능
String 문자열, 문자들의 집합 -> 문자열 연결 연산자(+)를 통해 합칠 수 있음, 작은따옴표, 큰따옴표에 큰 구별을 두지 않음
Number 모든 수치 데이터, 정수와 부동 소수점 숫자가 포함됨
Boolean 참(true)과 거짓(false)의 두 가지 값만 가질 수 있는 자료형
Null 값이 없음을 나타내는 자료형, 초기값으로 사용가능
Undefinded 변수가 선언되었지만 값이 할당되지 않은 상태를 나타냄
Symbol 고유하고 변경 불가능한 값을 생성, 객체의 속성 키로 사용
객체 자료형 기능
Object 키-값 쌍으로 구성된 데이터 구조, 속성과 메서드를 가짐
Array 객체의 일종으로 순서가 있는 데이터를 저장함, 다양한 자료형 포함
Function 함수는 객체로 취급, 호출할 수 있는 코드 블록

 

03. 변수 선언 방식

차이 var let const
스코프(Scope) 함수 스코프 지원, 블록 스코프 미지원 블록 스코프 지원 블록 스코프
재선언 가능성 변수 재선언 가능 변수 재선언 불가능 변수 재선언, 재할당 불가능(상수)
호이스팅(Hoisting) 변수의 선언이 해당 상단으로 호이스팅 호이스팅이 되지만 TDZ 호이스팅이 되지만 TDZ

* TDZ(Temporal Dead Zone) : 변수가 호이스팅이 되었지만 초기화되지 않는 상태를 나타내는 영역, 변수가 선언 전에 변수를 참조하려고 하면 TDZ에 걸려서 ReferenceError 발생

728x90