JS. 자료형

MJ·2022년 8월 20일
0

Java Script

목록 보기
11/57
post-thumbnail

자료형

Java Script에서 사용하는 값은, 항상 문자열이나 숫자형같은 자료형에 속하게 됩니다.
자료형의 종류는 기본적으로 8가지가 있습니다.


동적 타입

기존의 자료형에서 다른 자료형으로 바뀔 수 있는 언어를 동적타입언어라고 합니다

let message="hello";

message="123456";


/* */
처음 자료의 타입은 문자열이지만, 숫자형으로도 바뀔 수 있네요.



1) 숫자형 (Number)

  • 원시타입 중 하나인 자료형

  • 정수와 소수점 숫자들을 숫자형이라고 합니다.

  • 일반적인 숫자 이외에 Infinity -Infinity NaN 같은 특수 숫자 값도 포함됩니다.

❤️ 형식

let n=123;

n=14.512;

1.1 Infinity

alert( 1/0 );	// 무한대

alert(InFinity);	// 무한대


/* */
infinity는 어떤 숫자들보다 큰 무한대를 나타냅니다.
또는 어떤 숫자던 0으로 나누면 무한대가 됩니다.

1.2 NaN

alert( "문자열" / 2 );	// 문자열을 숫자로 나누므로 오류가 발생 , NaN


/* */
부정확한 수학적인 연산과정 중에 오류가 발생했을 떄 NaN이 발생합니다.
대표적으로 문자열을 정수로 나눌 때, 연산이 성립되지 않으므로 NaN이 발생합니다.

🔔 NaN

수학연산 과정중에 어떠한 오류가 발생해도 스크립트에 치명적인 손상이 발생하지 않음
연산과정중에 오류가 발생하면, 단지 NaN값을 반환하며 연산이 종료되기 때문입니다.



2) 제한없는 숫자형 (BigInt)

  • Java Script에서는 2의 53제곱-1 보다 큰 값이나 -2의 53제곱-1보다 작은 값은
    숫자형을 사용해서 나타낼 수 없습니다.

  • BigInt 자료형을 사용한다면, 숫자의 크기에 제한없이 숫자를 사용할 수 있습니다.

❤️ 형식

const BigInt=12391939123921n;	// BigInt 자료형을 사용할 때는, 숫자의 뒤에 `n`을 붙여야 한다.



3) 문자형 (String)

  • 문자열을 나타내는 자료형

  • " ' 따옴표를 사용해서 문자열을 나타냅니다.

  • 문자열에는 공백을 사용할 수 있습니다.


3-1. 문자열

let str = "Hi";		// Hi 문자열을 출력
let str2 = 'Hello';	// Hello 문자열을 출력
let phrase = `Hello Everyone ${str}`;	// Hello Everyone와 Hi 문자열을 출력


/* */
`"` 큰따옴표와 `'` 작은 따옴표의 차이는 없습니다. 일반적으로 문자열을 출력할 때 사용합니다.
` 역따옴표를 사용해서 문자열을 묶어주면 ${ } 괄호를 사용해 변수나 표현식을 넣을 수 있습니다.

3-2. 역 따옴표

let name = "John";

alert(`Hello ${name} Good bye`);	// Hello John Good bye, 문자열에 변수 삽입

alert(`value ${1+2}`)	// 문자열에 수학 표현식 삽입


/* */
문자열안에 `역따옴표(백틱)을 사용하면, ${ } 괄호안에 들어간 값이 수학연산이라면
연산이 끝난 결과 값이 문자열로 표시되고, 문자열이라면 문자열로 표시됩니다. 
변수명이라면 변수에 저장된 데이터가 문자열로 표시됩니다.

3-3. 역따옴표를 제외한 따옴표는 표현식 사용 불가

let name="John";

alert("Hello ${1+4}");	// 출력 : Hello ${1+4}

alert("Hello $['everyone']");	// 출력 : Hello $["everyone"] 

alert("Hello $[name]");			// 출력 : Hello $[name] 

3-4. 문자열 인덱스

let name = "Dumbo Octopus"

console.log(name[0]);	// 출력 : D

/* */
문자열은 인덱스라는 공간에 [0]~[???] 까지 한 글자씩 저장되어 있습니다.
name 변수에 [0]번째 인덱스에는 'D'라는 문자열이 저장되어 있기에 출력해보면 'D'만 출력되게 됩니다. 

3-5. 문자열의 길이

let name = "String";

console.log(name.length);	// 출력 : 6

/* */
length 프로퍼티는 문자열의 길이를 알려줍니다.

3-5. 문자열 병합

let userName = "minsu" + "dabin";

console.log(userName);	// 결과 : minsudabin

/* */
문자열간의 덧셈을 진행하면 병합이 됩니다.



4) 논리형 (boolean)

논리형은 truefalse 두 가지 값만 사용합니다.
주로 질문에 대한 yes no 같은 참이냐 거짓이냐를 나타낼 때 사용하는 자료형입니다.

❤️ 형식

let nameFieldChecked = true;	// 네임필드를 확인 했습니까? = yes
let ageFieldChecked = false;	// 나이필드를 확인 했습니까? = no

❤️ 비교연산자의 결과는 논리형으로 나타난다.

let number = 2 > 1;

alert(number);	// 2는 1보다 크기 때문에 참, 결과 값으로 true가 출력 됩니다.



5) 비어있는 자료형 (null)

  • 어떠한 자료형에도 속하지 않는 값을 null이라고 합니다.
    알 수 없는 값, 존재하지 않는 값, 비어있는 값을 정의할 때 사용합니다.
❤️ 형식 

let age = null;	// 나이를 알 수 없다.



6) 할당되지 않은 상태 (undefined)

  • 값이 할당되지 않는 상태를 나타낼 떄 사용하는 자료형

  • 변수는 선언했지만 값을 할당하지 않는다면 undefined 상태가 됩니다.
    또는, 알 수 없는 값이 반환될 때 undefined 를 반환하기도 합니다.

❤️ 형식 

let age;
alert(age);	// undefined 상태



7-8) 객체와 심볼 (object , symbol)

객체형을 제외한 다른 자료형들은, 자신에 해당되는 문자열이나 숫자형등 타입 1가지만
표현할 수 있지만, 객체는 데이터 컬렉션이나 복잡한 개체를 표현할 수 있습니다.

심볼형은 객체의 고유한 식별자를 만들 때 사용합니다.



typeof 연산자

인수의 자료형을 반환합니다.
자료형에 따라서 처리방식을 다르게 하거나, 변수에 대한 자료형을 알아낼 때 사용합니다.

❤️ 문법

typeof 자료형 or 값		// typeof 뒤에 오는 값에 대한 자료형을 반환 값으로 확인 시켜준다.


typeof undefined	// 반환 값 : undefined
typeof 0			// 반환 값 : number
typeof 10n			// 반환 값 : bigInt
typeof true			// 반환 값 : boolean
typeof "string"		// 반환 값 : string
typeof Symbol("id")	// 반환 값 : symbol

typeof Math			// object
/* 수학연산을 제공하는 내장 객체 : object가 출력 된다. */

typeof null			// object2
/* null의 결과는 object 객체 입니다. null은 객체가 아니지만, 하위 호환성을
유지하기 위해서 수정하지않고 내버려둔 상태입니다. */

typeof alert		// function
/* typeof 연산자는 피연산자가 함수라면, function(함수)를 반환합니다. 
피연산자인 alert는 함수이므로, function을 반환합니다. */
profile
프론트엔드 개발자가 되기 위한 학습 과정을 정리하는 블로그

0개의 댓글