데이터타입의 종류

QA - Test - Errer·2022년 12월 1일
0

TIL

목록 보기
25/52
post-thumbnail

js 심화

데이터 타입에는 기본형, 참조형으로 나뉘고

기본형은 : Number, String, Boolean, null, nudefined, symbol

참조형은 : Object->Array, Function, Date, RegExp, Map,WeakMap Set,WeakSet 이있다.

기본형은 값이 담긴 주소값을 즉시 복제를하고

참조형은 값이 담긴 주소값들로 이루어진 묶음을 가리키는 주소값을 복제한다.

정말 이상하게 적었지만 이렇게 이해한다.

Bit

Bit : 0과 1을 가지고있는 작은 메모리 조각

그럼 메모리 조각은 무엇인가? 메모리 조각들이 모이고 모여 결과적으로 Memory리가 된다.

변수 선언과 데이터 할당 예시

풀어서 쓴 변수 할당 방식

var testValue;
testValue = 'test value!';

붙여 쓴 변수 할당 방식

var testValue2 = 'secnd test balue!';

그럼 변수는 무엇인가?

변할수 있는 수의 그릇 이라고 생각하면 편할꺼 같다.

위 test value를 변수 1003에 넣고 데이터 영역에서는 변수 영역에 'test value' 만 가져와5004에 넣는다.

그러면 1003에 바로 다시 대입을 하면 되지않나? 왜 5004에 다시 넣는것인가? 그 이유는

  1. 자유로운 데이터 변환
    1)이미 입력한 문자열이 길어진다고 생각했을때 1003의 데이터가 길어지고 1004의 영역까지 잡게 된다면 효율적이지 않기 때문이다.

  2. 메모리 효율적 관리

1)똑같은 데이터를 여러번 저장한다고 생각했을때 5'이라는 데이터를 800개 저장하고 싶다면
변수영역인 1002에 5을저장, 1003에 5을저장, 1004에 5을저장 º º º 1802에 5을 저장
이렇게 저장할것이다.

2)반대로 데이터영역에서 '5'을 지정해놓고 변수영역에 하나식 주게된다면 더 효율적이다.

계산 식으로 나타내면

숫자는 : 8byte이다

1번은 8 X 800 = 6400byte

2번은 2 X 800 + 8byte = 1600byte + 8byte = 1608이다.

결과적으로 2번이 효율이 더뛰어나다

profile
https://dirt-shoe-59d.notion.site/QA-Engineer-a021ababa8b44cb780000fc01eca2a8e

2개의 댓글

comment-user-thumbnail
2022년 12월 1일

타입 종류 강의 너무 재밌습니다 ㅎㅎ그치않나요?

1개의 답글