자바스크립트

[Javascript] 자바스크립트 기본타입

포포015 2021. 1. 17. 19:32

모든 언어의 기본은 데이터 타입을 파악하는것에서부터 시작한다.

자바 스크립트의 값은 크게 기본타입참조 타입으로 나뉜다

 

* 자바스크립트 기본타입

자바 스크립트 에는 기본타입인 숫자,문자열,불린값,null,undefined 라는 타입이 있다

자바 스크립트는 느슨한 타입 체크 언어이다. 엄격한 타입 체크 언어인 C언어나 java같은 언어는 

변수를 선언할때 변수의 데이터 타입을 지정해야한다 .(int i = 0; 과같이)

그리고 지정된 변수의 데이터타입에 맞게 해당 변수에 값을 저장하고 사용하는것이 일반적이다.

반면 자바스크립트는 변수를 선언할때 타입을 미리 정하지않고 ,var 라는 키워드로 변수선언함(요즘은 let도 있음)

 

* 숫자

자바스크립트에는 하나의 숫자형만 존재한다. 자바스크립트는 모든 숫자를 64비트 부동 소수점 형태로 저장함.

자바스크립트에서는 정수형이 따로 없고, 모든 숫자를 실수로 처리하므로 나눗셈연산을 할땐 조심해야함.

(C 언어 같은경우엔 5/2는 소수 부분을 버린 2가 출력되나 JS는 5와 2가 정수가 아닌, 실수로 취급되므로 2.5가 출력)

1
2
3
4
var num = 5 / 2;
 
console.log(num); // 출력값 2.5
console.log(Math.floor(num)); // 출력값 2
cs

 

* 문자열

문자열은 작은따옴표(')나 큰따옴표(")로 생성, JS에서는 따로 java 언어의 char 타입과 같이

문자 하나만 별도로 나타내는 데이터 타입은 존재하지않음. 문자열은 문자 배열처럼 인덱스를 이용해서 접근가능.

( 한번 정의된 문자열은 변하지 않는다 한번생성된 문자열은 읽기만 가능하지 수정을 불가능.)

1
2
3
4
5
6
7
8
//str 문자열 생성
var str = "test";
console.log(str[0], str[1], str[2], str[3]); //출력값 t e s t
 
//문자열의 첫 글자는 대문자로 변경?
str[0] = "T";
console.log(str); // 출력값 test
 
cs

 

*null과 undefined 

이 두타입은 JS에서 '값이 비어있음'을 나타냄.

JS에서 기본적으로 할당되지않은 변수는 undefined 타입 이며, 변수 자체의 또한 undefined 이다

  (데이터타입 이자 값이다)

null타입의 변수의 경우에는 개발자가 명시적으로 값이 비어있음을 나타내는데 사용

 (null타입 변수인지를 확인할때 typeof 연산자 사용 하면안되고, 일치연산자(===)를 사용하자)