brunch

You can make anything
by writing

C.S.Lewis

by 별똥별 shooting star Aug 14. 2023

자바스크립트, 동적 타이핑이란?

출퇴근길에 공부하는 자바스크립트1

동적 타입핑이란 변수를 선언이 아닌 할당에 의해 타입이 결정되며, 재할당에 의해서 언제든지 타입이 동적으로 변할 수 있다는 것을 뜻 한다.


C와 Java 같은 경우는 정 타입 언어로 변수를 선언할 때 데이터 타입을 사전에 선언해야 한다. 그러나 이와는 반대로 자바스크립트는 변수를 선언할 때 타입을 선언하지 않고 var, let, const 키워드를 사용해 변수를 선언한다. 즉, 어떤 데이터 타입의 값이라도 자유롭게 할당할 수 있는 것이다.  


이러한 동적 타이핑은 사용하기에 편하다는 장점을 가지고 있다. 하지만 이와는 반대로 여러 단점들도 가지고 있다. 첫 번째로는 복잡한 프로그램에서는 변화하는 변수값을 추적하기가 어렵다는 것이다. 두 번째로는 암묵적으로 타입이 변환되기도 하여서 개발자가 예측을 하기 어려울 수 있다. 마지막으로는 값을 확인하기 전에 타입을 확신할 수가 없다는 것이다. 즉, 유연성은 높지만 신뢰성이 떨어진다는 것이다.


그렇기 때문에 변수의 사용은 필요한 만큼만 사용해야 하며, 변수의 유효범위를 최대한 좁게 만들어 예측 가능성을 통제해야 한다. 그렇기 때문에 전역변수는 최대한 자제를 하는 것이 좋다. 그리고 변수보다 상수를 사용해 값의 변경을 억제하고, 변수의 목적을 잘 파악할 수 있도록 변수의 이름을 잘 지어야 한다. 

매거진의 이전글 자바스크립트, 헷갈리게 데이터 타입이 왜 필요한거야?
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari