늘 겸손하게

JavaScript - 자바스크립트가 유동적인 언어인 이유 본문

Programming/JavaScript

JavaScript - 자바스크립트가 유동적인 언어인 이유

besforyou999 2022. 8. 19. 18:14

자바스크립트가 유동적인 언어인 이유

 

 

변수의 자료형을 실행 시에(런타임에) 결정하는 동적 언어이기 때문.

 

위는 자바스크립트의 유연함으로 자바스크립트의 강점이나, 코드량이 많아지고 프로젝트 규모가 커지다 보면 변수값이 예측불가능해질 가능성이 높아져 자바스크립트의 단점이기도 하다.

 


정적언어

  • 정적 언어는 정적 타입(static type)의 변수를 사용
  • 변수를 선언할 때 변수에 저장할 데이터의 타입을 모두 선언해두어야 한다.
  • 컴파일 시 변수의 타입이 결정되는 언어
  • c, java 등이 대표적
  • 컴파일 시 선언된 변수 자료형과 다른 데이터가 변수에 들어가 있으면 컴파일 에러 발생
  • 컴파일 중에 타입 에러를 걸러내므로 안정성이 뛰어남

 

동적 언어

  • 동적 타입(dynamic type) 변수 사용
  • 변수의 자료형을 실행 시(Runtime)에 결정
  • 대표적으로 JavaScript, Python, Ruby 가 있음
  • 변수에 어떠한 타입의 데이터도 할당하고 재할당 가능하다 -> 자바스크립트의 유연함
  • 이러한 유연함 때문에 변수에 할당되는 데이터값이 예측불가능해질 수 있다