본문 바로가기
JavaScript

자바스크립트 - 데이터 타입,연산자

by 달보드레. 2020. 6. 8.

JavaScript 에서 기본 타입은 숫자,문자열,불린값 , null , undefined 라는 타입이 있다

JavaScript는 느슨한 타입 체크 언어이다

C언어나 JAVA의 경우에는 변수에 저장할 데이터의 종류에 따라

char, int,float, 등과 같이 타입에 맞게 지정을 해야 한다

하지만 JavaScript는 변수를 선언할때 타입을 미리 지정하지 않고

var라는 한가지 타입으로만 변수를 선언한다

이렇게 선언된 변수에는 어떤 타입의 데이터라도 저장이 가능

JavaScript 변수에 어떤 데이터가 저장되냐에 따라 변수의 타입이 결정 됨

// 숫자타입
var intNum = 10;
var floatNum = 0.1; 

// 문자열 타입 
var str1 = 'str1'; 
var str2 = "str2"; 

// 불린 타입 
var booleanVal = true; 

// undefined 타입 
var emptyVal; 

// null 타입 
var nullVal = null;

console.log(typeof intNum, typeof floatNum ,typeof str1 , 
typeof str2 , typeof booleanVal, typeof emptyVal , typeof nullVal); 
// typeof 연산자는 피연산자의 타입을 리턴함

결과 :

- 숫자

JAVA나 C언어의 경우

정수냐 실수냐에 따라 int,float,double,long 과 같이 다양한 숫자 타입이 존재한다

허나 JavaScript에는 모든 숫자를 64비트 부동 소수점 형태로 저장하기 대문에 하나의 숫자 타입만 존재한다

이는 double과 유사한 형태이다

따라서 JavaScript var로 선언된 변수에 정수나 실수 구분없이 바로 그 값을 저장 가능하다

하지만 이로 인해 나눗셈 연산시 주의를 해야 한다 모두 실수로 처리하기 때문이다

- 문자열

문자열은 ( ") 나 ( ' ) 로 생성한다

JavaScript는 문자열을 배열처럼 인덱스로도 접근이 가능하다

또한 한번 정의된 문자열은 변하지 않는다

읽기만 가능하고 수정은 불가하다

 

var str = 'BLOG'; 
console.log(str[0],str[1],str[2],str[3]); 
str[2] = 'o'; 
console.log(str);

- null , undefined

이 두타입은 값이 비어있음을 뜻함

JavaScript에서 기본적으로 값이 할당 되지 않으면 undefined상태이다

undefined은 타입이자 값을 나타낸다

- 참조 타입

JavaScript에서 숫자,문자열,불린값 , null, undefined 같은 기본 타입을 제외한 모든 값은 객체다

따라서 배열,함수,정규표현식도 모두 객체

JavaScript에서 객체는 단순히 키 : 값 형태의 프로퍼티들을 저장하는 컨네이너이다 .

*프로퍼티란 ?? :

Hash와 유사하다

JavaScript에서 기본타입은 하나의 값만을 가지는데 비해, 참조 타입인 객체는 여러 개의 프로퍼티들을 포함할 수 있으며

이러한 객체의 프로퍼티는 기본 타입의 값을 포함하거나, 다른 객체를 가리킬 수 있다

이러한 프로퍼티의 성질에 따라 개체의 프로퍼티는 함수로 포함할 수 있으며, JavaScript에서는 이러한 프로퍼티를 메서드라고 부른다

'JavaScript' 카테고리의 다른 글

JS - 구조 분해 할당  (0) 2021.10.18
JS - var vs let vs Const  (0) 2021.10.18
JS - 함수  (0) 2021.10.07
자바스크립트 핵심 컨셉 33 - (1) Call stack , Primitive Types  (0) 2020.06.15
JSON (JavaScript Object Notation)  (0) 2020.05.19