티스토리 뷰
728x90
데이터 타입?
- 데이터 타입(data type)이란 프로그램에서 다룰 수 있는 값의 종류를 의미한다.
데이터 타입 종류
숫자
- 자바스크립트는 다른 언어와는 달리 정수와 실수를 따로 구분하지 않고, 모든 수를 실수 하나로만 표현한다.
var number1 = 10;
var number2 = 10.01;
console.log(number1); //10
console.log(number2); // 10.01
문자열
- 자바스크립트에서 문자열은 큰따옴표(")나 작은따옴표(')로 둘러싸인 문자의 집합을 의미한다.
- 문자열을 이어줄때는 +기호를 사용한다.
- 큰따옴표 안에 큰 따옴표 또는 작은 따옴표 안에 작은 따옴표를 입력시 이스케이프 문자(\)를 사용한다.
var firstName = 'park';
var lastName = "jin";
var fullName = firstName + lastName;
console.log('fullName :: ' + fullName); // fullName :: parkjin
var introduce = "my name is \"park jin\"";
console.log(introduce); // my name is "park jin"
불리언(Boolean)
- 참(true), 거짓(false)를 저장한다.
var booleanTrue = true;
var booleanFalse = false;
console.log(booleanTrue); // true
console.log(booleanFalse); // false
var number1 = 1;
var number2 = 2;
console.log(number1 === number1); // true
console.log(number1 === number2); // false
null과 undefined
- null이란 object 타입이며, 아직 '값'이 정해지지 않은 것을 의미한다.
- undefined란 null과는 달리 '타입'이 정해지지 않은 것을 의미한다.
- undefined는 초기화되지 않은 변수나 존재하지 않는 값에 접근할 때 반환한다.
var undefinedVar; // 초기화 하지 않음.
var nullVar = null;
console.log(undefinedVar); // undefined
console.log(nullVar); // null
// 없는 변수
console.log(typeof noneVar); // undefined
- null과 undefined는 동등 연산자(==)와 일치 연산자(===)로 비교할 때 그 결과가 다르므로 주의한다.
- null과 undefined는 타입을 제외하면 같은 의미지만, 타입이 다르므로 일치하지는 않는다.
var undefinedVar; // 초기화 하지 않음.
var nullVar = null;
console.log(undefinedVar == nullVar); // true
console.log(undefinedVar === nullVar); // false
객체
- 객체는 여러 프로퍼티(property)나 메소드(method)를 같은 이름으로 묶어놓은 일종의 집합체를 의미한다.
var person = {
name: 'park jin',
age: 31,
introduce: function() {
return 'my name is ' + this.name + ' and my age is ' + this.age
}
};
console.log(person.name); // park jin
console.log(person.age); // 31
console.log(person.introduce()); // my name is park jin and my age is 3
typeof
- 피 연산자의 타입을 반환한다. (null과 undefined의 타입에 주의한다.)
var number = 31;
var string = 'park jin';
var object = {};
var nullVar = null;
var undefinedVar;
console.log(typeof number); // number
console.log(typeof string); // string
console.log(typeof object); // object
console.log(typeof nullVar); // object
console.log(typeof undefinedVar); // undefined
NaN
- Not a Number의 축약형으로, 정의되지 않은 값이나 표현할 수 없는 값이라는 의미한다.
var nanVar = 1 - 'park jin';
console.log(nanVar); // NaN
console.log(0 / 0); // NaN
타입 변환, 변수 재정의
- 자바스크립트는 타입 검사가 느슨하다.
- 변수의 타입은 정해져있지 않으며 다른 타입으로 재정의가 가능하다. (버그 가능성 높음)
var number = 31;
number = 'park jin';
console.log(number); // park jin
묵시적 타입 변환
- 특정 타입의 값에 다른 타입의 값이 오면, 자동으로 타입을 변환한다.
- 자동으로 변환되므로 의도하지 않는 타입으로 변환 될수 있으니 주의한다.
var example1 = 'park jin age is ' + 31;
console.log(example1); // park jin age is 31
console.log(typeof example1); // string
var example2 = '10' * '10';
console.log(example2); // 100
console.log(typeof example2); // number
출처
http://tcpschool.com/javascript/js_datatype_basic
728x90
'개발 언어 > NodeJS' 카테고리의 다른 글
자바스크립트 - 연산자 (0) | 2019.07.06 |
---|---|
자바스크립트 - 변수 (0) | 2019.07.06 |
자바스크립트 - 기본 개념 (0) | 2019.07.06 |
Nodejs - 개발 환경 설정(VS Code) (0) | 2019.07.06 |
Nodejs - 글 작성 이유 및 정리 계획 (0) | 2019.07.06 |
댓글