JS : 자료형 - 원시 타입(primitive type)
문자형 (string)
- 문자형(string)은 문자, 문자열을 표현하는 자료형이며, 3가지 방식으로 작성할 수 있다.
- 큰 따옴표 : "Mike";
- 작은따옴표 : 'Mike';
- 역 따옴표 또는 백틱(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
변수에 직접 true나 false를 할당할 수 있고, 어떤 조건문의 결과가 참인지 거짓인지를 나타낼 수도 있다.
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 |