STUDY/JavaScript

JS : 자료형 - 원시 타입(primitive type)

RESHUR : 레슈 2022. 4. 14. 14:06

JS : 자료형 - 원시 타입(primitive type)


JS : 자료형 - 원시 타입(primitive type)

문자형 (string)

  • 문자형(string)은 문자, 문자열을 표현하는 자료형이며, 3가지 방식으로 작성할 수 있다.
  1. 큰 따옴표 : "Mike";
  2. 작은따옴표 : 'Mike';
  3. 역 따옴표 또는 백틱(backthick) : `Mike`;

백틱은 탭(tap) 키 위에 위치하고 있다.

 

  • 큰 따옴표("")와 작은따옴표('')는 큰 차이는 없다.
1. const name1 = "Mike";
2. const name2 = 'Mike';
3. const name3 = `Mike`;

 

  • 작은따옴표('')를 써야 할 경우 큰 따옴표("")로 감싸서 사용한다. 
"I'm a banana";

 

  • 만약, 작은따옴표('')로만 사용하고 싶을 경우 역슬래시(|)를 사용하면 된다.(엔터키 위에 위치하고 있다.)

      역슬래시(|)가 없는 키보드일 경우 원화(\) 표시를 사용해도 동일하게 인식한다.

'I\'m a banana'

 

  • 백틱(``)은 문자열(string) 내부의 변수를 표현할 때 사용하면 편하다.
    • 일반 따옴표로 작성할 경우 변수가 그대로 표시된다.
// 예시 1 
const name = "Mike";
const message `My name is ${name}`;
console.log(message); // My name is Mike

//예시 2
const message2 = `나는 ${30+1}살 입니다.`;
console.log(message2); //나는 31살 입니다.

 

 


숫자형 (number)

  • 숫자형(number)은 정수, 부동소수점(floating point) 숫자를 표현하는 자료형이다.
  • 숫자형은 사칙연산( +. -, /, * )이 가능하다.
  • 소수점을 표현할 수 있다.
  • % 는 A를 B로 나눈 나머지 값을 반환한다. ex :) console.log(A%B);
  • 문자열더하기(+)가 가능하다.
  • 숫자형과 문자열을 합쳐서 사용 가능하나 합칠경우 숫자형이 문자열로 바뀐다.

 

const age = 30; //숫자형
const PI = 3.14;

console.log(1+2); //더하기
console.log(10-3); //빼기
console.log(3*2); //곱하기
console.log(10/2); //나누기
console.log(6%4); //나머지

const a = "나는 ";
const b = " 입니다.";

const name = "레슈";
console.log(a + name + b); //나는 레슈 입니다.

const age2 = 22; 
console.log(a+name+b+'저는 ' + age2 + '살 입니다.') //'나는 레슈 입니다.저는 22살 입니다.'

 

  • 일반적인 숫자 외에 Infinity, -Infinity, NaN( Not a Number) 같은 특수 숫자 값이 포함되어있다.
const name = '레슈';
const x = 1/0; //Infinity
const y = 2/name; //NaN (Not a Number)

 

  • 2의 53 제곱 -1 (2^53-1) 보다 큰 값을 사용할 수 없으며, 더 큰 정수를 다루고 싶다면 bigint 자료형 사용해야 한다. 
    • 정수, 실수 등의 숫자, 정수의 한계는 2^53 → 그 이상을 표현할 때는 n을 붙인다. (bigint)
const num = 123456n;

console.log(typeof(num)); //bigint

 

소수점 오류

const num1 = 123.0;
const num2 = 123.456;

console.log(num1 - num2); // 예상값 : -0.456 실제반환값:-0.45600000000000307
console.log((num1-num2).toFixed(3)); //예상값: -0.456 실제반환값:-0.456

컴퓨터는 소수점 연산을 100% 클리어하지 못한다. 그 이유는 변수에 대한 메모리 공간의 한계가 있기 때문에 최적화 연산을 하는데 일부의 오차가 발생한다.

 number라는 객체에서는 일부 자료형에 (0. 소수점에 대한) 처리가 100% 안되지만, math라는 수학적 객체에서는 완벽하게 소수점에 대해 처리가 가능하다. 

number는 toFixed()를 지원하기 때문에 -0.45600000000000307를 반올림하여 처리할 수 있다.

오차는 수많은 소수점 아래에서 발생하기 때문에 웬만한 사칙연산에 대한 소수점은 toFixed()를 통해 수정할 수 있다.

 


논리형 (boolean)

  • 논리형(boolean)은 논리적인 값을 표현하는 자료형이다.
  • 참인 true와 거짓 false 두 가지 값만 존재한다.
  • 주로 조건문 등에서 동작 판단의 기준으로 사용된다.
const a = true // 참
const b = false //거짓

const name = "레슈";
const age = 21;

console.log(name === '레슈');//true;
console.log(age > 40);//false

변수에 직접 truefalse를 할당할 수 있고, 어떤 조건문의 결과가인지 거짓인지를 나타낼 수도 있다.

 


undefined

  • undefined는 값이 할당되지 않는 상태 나타낼 때 사용한다.
  • 변수 선언 후 초기화하지 않는다면, undefined가 자동으로 할당된다.
const name;
console.log(name); // undefined

 

 


null

  • null은 값이 비어있다는 의미로 표현되는 자료형
  • 존재하지 않는(nothing), 비어있는(empty), 알 수 없는(unknown) 값을 나타내는 데 사용
const user = null;
console.log( user === null); // true

 


symbol

  • 문자열과 함께 객체(property)로 사용되며 ES6에서 추가되었다.

2022.04.14 - [TIL/JavaScript] - JS : typeof 연산자

 

JS : typeof 연산자

JS : typeof 연산자 변수의 자료형을 알아내는 연산자이다. 연산자인 typeof x와 함수인 typeof(x)로 문법을 지원한다. typeof 연산자는 피연산자 앞에 위치한다 변수를 사용하는 개발자가 직접 작성했을

sol-reshur.tistory.com

 

 

'STUDY > JavaScript' 카테고리의 다른 글

JS : 대화상자를 나타내는 메서드 : alert, prompt, confirm  (0) 2022.05.03
JS : 자료형 - 객체 타입 (object type)  (0) 2022.04.14
JS : typeof 연산자  (0) 2022.04.14
JS : 변수, 상수 let, const  (0) 2022.04.14
JS : Javascript  (0) 2022.04.12