2020. 6. 10. 00:54ㆍJavascript/문법
1. 숫자형
-
정수, 부동 소수점과 같은 숫자 등의 수를 나타낼 때 사용한다.
-
곱셈(*), 나눗셈(/), 덧셈(+), 뺄셈(-) 등을 이용해서 연산이 가능하다.
-
일반적인 숫자 외에 Infinity, -Infinity, NaN과 같은 특수 숫자 값이 존재한다.
const num = 3.5; // 3.5
/* 자바스크립트는 정수, 소수를 구분하는 형이 없다.*/
console.log(num/3); // 1.1666666666666667
console.log(parseInt(num/3)); // parseInt를 이용해서 1.1666666666666667에서 정수 부분 1을 가져오게 할 수 있다.
/* 숫자형의 사칙연산 */
console.log("더하기:", 3 + 3.5); // 6.5
console.log("빼기:", 3 - 7); // -4
console.log("곱하기:", 2.3 * 3);// 6.8999999999999995
console.log("나누기:", 3/3); // 1
/* 특수 숫자 값 */
console.log("무한대:", 1/0); //Infinity
console.log("NaN:", 1/"ABC"); //계산 중 에러 발생
2. BigInt
자바스크립트는 내부표현방식 때문에 $$ -(2^{53}-1)\leq x \leq(2^{53}-1) $$ 의 범위의 숫자만을 나타낼 수 있다.
대부분의 상황에서 이런 제약사항은 문제가 되지는 않지만, 암호 관련 작업의 경우나 아주 높은 정밀도로 작업을 해야할 때는 엄청나게 큰 숫자를 필요로 한다. 그래서 나온 것이 BigInt다. 이 자료형 나온지 얼마 안됐으며 길이에 상관없이 정수를 나타낼 수 있다. 정수 리터럴 끝에 n을 붙여서 만들 수 있다.
/* BigInt 선언 방식
(1) 끝에 n을 붙인다.
(2) 함수 BigInt를 호출한다.
*/
const bigint = 1234567890123456789012345678901234567890n;
const sameBigint = BigInt("1234567890123456789012345678901234567890");
console.log(bigint);
console.log(sameBigint);
console.log(bigint === sameBigint); //true
/* 일반 숫자와 상관없이 연산이 가능하다.*/
console.log(1n + 2124141414n); // 2124141415n
console.log(5n/1n); // 5n
/* BigInt는 BigInt끼리만 연산이 가능하다. */
console.log(1n + 2); // 에러 발생
console.log(2n/2); // 에러 발생
/* 일반 숫자와 함께 쓰는 것이라면 명시적 형 변환을 해주어야한다. */
console.log(Number(1n) + 24); // 25
/* 비교 연산자 */
console.log(2n > 1n); // true
console.log(24 > 1n); // true
3. 문자형
문자열을 표현하기 위해서는 다음과 같은 세 가지를 쓰면 된다.
-
큰 따옴표 ("")
-
작은 따옴표 ('')
-
백틱(``) [키보드 1키 왼쪽에 있는 `]
const age = 25;
/* 모두 같은 결과: 내 나이는 25 입니다. */
console.log("내 나이는 " + age + "입니다."); // 큰 따옴표
console.log('내 나이는 ' + age + '입니다.'); // 작은 따옴표
console.log(`내 나이는 ${age}입니다.`); // 백틱
4. Boolean 형
true, false 두 가지 밖에 없다. true는 긍정을 나타내고 false는 부정을 나타낸다.
const positive = true;
const negative = false;
if(positive)
console.log("무조건 실행!")
if(negative)
console.log("영원히 실행 안됨!");
5. null 값
null은 지금까지 소개한 자료형 중 어느 자료형에도 속하지 않는다. null은 오로지 null 값만 포함하는 별도의 자료형을 말한다. 주로 알수 없는 값, 비어 있는 값을 나타내는데 사용한다.
const age = null;
if(age===null)
console.log("나이를 알 수 없습니다.");
6. undefined 값
undefined 값은 null 처럼 자신만의 자료형을 생성한다. 또한 값이 할당되지 않은 상태를 나타낼 때 사용한다. 그리고 undefined는 직접 변수에 값을 할당할 수 있다. 이는 null처럼 알수없는 값, 비어있는 값을 나타내는데 사용하는데, 하지만 이 경우, undefined보다는 null값을 할당하도록 하자.
let age;
let value = undefined;
/* age를 초기화하지 않았으므로, 값이 할당되지 않아 undefined 출력 */
console.log(age); //undefined
console.log(value); //null을 직접 할당하도록 하자!
if(value === undefined)
console.log("This value is undefined");
7. 객체
객체는 특수한 자료형이다. 객체형을 제외한 다른 자료형은 문자열이든 숫자든 한 가지만 표현할 수 있어서 원시 자료형이라 부른다. 하지만 객체는 데이터 컬렉션이나 복잡한 개체표현이 가능하다. 객체 선언에는 컬리 브라켓({})을 사용한다.
/* 객체 선언 */
const obj = {};
console.log(obj); // {} 출력
/* 객체는 데이터들을 내 임의대로 키 값을 만들어서 정렬할 수 있다. */
const kane = {
name: "케인",
isbigNode: true,
gender: "man",
msg: ["아이고난", "흐헤헤"]
}
console.log(kane);
8. 심볼 형
객체의 고유한 식별자를 만들 때 사용한다. 나중에 따로 포스팅하도록 하겠다.
참고자료
'Javascript > 문법' 카테고리의 다른 글
[JS] 비동기 처리의 시작 콜백, 그리고 콜백 지옥 (0) | 2021.04.11 |
---|---|
[JS] 자료의 형 변환 (0) | 2020.06.13 |
[JS] 변수와 상수 (0) | 2020.06.08 |
[JS] Hello World 출력 (0) | 2020.06.07 |
자바스크립트란? (0) | 2020.06.03 |