Type | Description |
---|---|
Number | 1, 2, 3, 100, .... 모든 숫자 |
String | "Hello, world" 'Hola' ..큰/작은 따옴표 안의 것 |
Boolean | true / false |
undefined | undefined |
null | null |
undefined : 변수가 선언이 되었지만, 값이 할당되지 않았을때
null : 할당된 값 (값이 없다는 것을 보여주는 변수로서 사용)
null === undefined // false
null == undefined // true
null === null // true
< 숫자를 문자열로 바꾸는 방법 >
1. String(input);
input에 들어가는 값을 문자열로 반환
let num = 200; let str = String(num); console.log(str); // "200" console.log(typeof str); // string
2. Number.prototype.toString();
let count = 10; let str = count.toString(); // "10" console.log(typeof str) // string
< 문자열을 숫자로 바꾸는 방법 >
1. Number(input);
let str = "20210302"; let num = Number(str); console.log(num); console.log(typeof num);
let
Type | Descripttion |
---|---|
Array | ['apple', 'banana', 'kiwi'] 배열 안에 값이 나열되어 있음 |
Object | {key : value, key2 : value2} |
function() |
원시자료형은 메모리의 stack ---> 보관함 하나하나에 저장
참조자료형은 메모리의 heap ---> 값을 가리키는 주소에 저장
주소값만 같으면 참조자료형은 같은 주소를 가지고 있는 요소들에게 반영이 된다는 것! 그리고 같은 배열, 객체, 함수처럼 보여도 랜덤의 주소에 저장되어 있기 때문에 서로 엄밀히 같다고 말할 수 없기에 false값이 나온다.
하지만 원시자료형은 해당 값이 바뀌어 할당된다.
let x = 2;
let y = x;
y = 3;
x의 값은 ??? // 2