IT 소스/자바스크립트

[자바스크립트] 데이터 형식(data type)

한량이야기 2022. 3. 21. 13:44
반응형

1. 기본 데이터 타입

  자바스크립트 기본 데이터 타입은 숫자(number), 문자(String), 불린(boolean), 알수없음(undefined), 비어있음(null)이 있습니다.  또한 typeof를 사용하여 무슨 타입(type)을 가지는지 확인 할 수도 있습니다.

  'typeof'가 반환하는 타입의 종료는 number, String, boolean, undefined(값이 없음), object(null를 포함한 객체), function이 있습니다.

 

  1) 숫자 타입 (number type)

  자바스크립트 숫자는 부동 소수점 형태로 사용됩니다. 이는 java의 double과 같습니다.  즉 다른 프로그래밍 언어의 int, double, float등의 구분이 없습니다.

// 자바스크립트 숫자는 큰따옴표(" ")나 작은따옴표(' ') 없는 숫자를 숫자로 인식합니다.
 
document.write(1 + 1); // 2를 출력
document.write(2.5 + 3.1); // 5.6를 출력
document.write(3 * 2); // 6를 출력
document.write(6 / 2); // 3를 출력

document.write(typeof 6); // number를 출력

 

  2) 문자 타입 (String type)

  자바스크립트에서 문자는 큰 따옴표(" ")나 작은 따옴표(' ') 중 하나로 감싸서 사용합니다.  큰따옴표로 시작하면 큰따옴표로 끝나야 하고 작은 따옴표로 시작하면 작은 따옴표로 끝내야 합니다.

document.write("1 + 1"); // 2가 아닌 1 + 1를 그대로 출력
document.write("hello" + " " + "world");  // 큰 따옴표로 감싸을 경우 
document.write('hello' + ' ' + 'world');  // 작은 따옴표로 감싸을 경우
// 큰 따옴표나 작은 따옴표로 감싸도 hello world를 출력 
// hello와 world 사이에 공백문자를 넣지 않으면 helloworld가 붙어서 출력됨

document.write(typeof "hello");  // String를 출력

 

문자열은 큰 따옴표나 작은 따옴표가 들어가는 경우 그 반대의 따옴표로 감쌀 수 있습니다.

document.write("hello 'hello' hello"); // hello 'hello' hello를 출력
document.write('hello "hello" hello'); // hello "hello" hello를 출력

 

  3)  불린 타입 (boolean type)

  자바스크립트에서 참과 거짓을 표현하기 위해 ture와 false를 사용합니다.

  false로 사용 되는 값은 false, 0, -0, NaN, null, "", '', undefined가 있고 그 외는 true입니다.

document.write(typeof true);  // boolean를 출력
document.write(typeof false);  // boolean를 출력

// 만약 true나 false에 따옴표로 묶어주면 boolean이 아닌 String를 출력
document.write(typeof "true");  // String를 출력

 

  4) 알수없음 (undefined type)

  자바스크립트에서 undefined는 변수를 선언만 하고 값을 설정하지 않았을 경우입니다.  역시 변수를 선언하지 안은 변수도 undefined입니다.

var x; 

document.write(x);  // undefined를 출력
document.write(typeof x);  // undefined를 출력

 

  5) 비어있음 (null type)

  자바스크립트에서 null은 값이 비어있음을 나타낼 때 사용합니다. 

var x = null; 

document.write(x);  // null를 출력
document.write(typeof x);  // object를 출력
반응형