EverGiver
자료형 본문
728x90
자료형이란
컴퓨터가 처리할 수 있는 자료의 형태
종류 | 설명 | 예시 | |
기본 유형 |
숫자형 | 따옴표 없이 숫자로만 표기 | var a = 7; |
문자열 | 작은따옴표(' ')나 큰따옴표(" ")로 묶어서 나타낸다. 숫자를 따옴표로 묶으면 문자로 인식한다. |
var b = 'Hello'; var c = "1"; |
|
논리형 | 참(true)과 거짓(false)라는 2라지 값만 있는 유형이다. 이때 true와 false는 소문자로만 표시한다. |
var isEmpty = true; | |
복합 유형 |
배열 | 하나의 변수에 여러 개의 값을 저장한다. | var seasons = ['봄', '여름', '가을', '겨울']; |
객체 | 함수와 속성을 함께 포함한다. | var date = new Date( ); | |
특수 유형 |
undefined | 자료형이 지정되지 않았을 때의 상태이다. (변수 선언만 하고 값을 할당하지 않은 변수는 undefined 상태) |
|
null | 값이 유효하지 않을 때의 상태이다. |
숫자형
숫자형(number)은 정수와 실수를 나누어 구분한다.
- 정수
- 소수점 없는 숫자 - 실수
- 소수점이 있는 숫자 - 자바스크립트에서는 정수와 실수를 함께 묶어 숫자형이라고 한다.
- 15자리를 넘어가게 되면 제대로 표시되지 않을 수 있다.
- Number( )를 활용하여 문자형 데이터를 숫자형 데이터로 치환한다.
- 자바스크립트에서는 실수를 정밀하게 계산하는 것은 좋지 않다.
(예상하지 못한 결괏값이 나올 때가 존재한다.)
- 자바스크립트에서는 0.1이나 0.2를 2진수로 변환해서 계산하는데 이때 자릿수가 많은 소수로 변환되고, 그 상태에서 0.1이나 0.2를 더한다.
- 해결 방법
▷ 정수로 변환한 뒤, 다시 소수점으로 만든다.
<script> var num1 = 200; var num2 = Number(str2); // 문자형 데이터를 숫자형 데이터로 치환 var num3 = 10000000000000000000000000000000 var num4 = 99999999999999 // 15자리를 넘어가게 되면 제대로 표시되지 않을 수 있다. var num5 = 0.1 var num6 = 0.2 document.write(num1, '<br>'); document.write(num1+str2, '<br>'); document.write(num1+num2, '<br>'); document.write(num3, '<br>'); document.write(num4, '<br>'); document.write(num5, '<br>'); document.write(num6, '<br>'); document.write(num5+num6, '<br>'); document.write(num5*num6, '<br>'); // 소수점을 계산할 경우 정수로 변환한 뒤 다시 소수점을 만들어야 한다. document.write((num5*10 + num6*10)/10, '<br>') document.write(((num5*10) * (num6*10))/100, '<br>'); </script>
문자열
작은따옴표(' ')나 큰따옴표(" ")로 묶은 데이터를 의미
- 숫자도 작은따옴표나 큰따옴표로 묶으면 문자열로 인식한다.
- 작은따옴표로 시작한 문자열 데이터는 작은따옴표로 끝맺음을 해야 한다.
(큰따옴표도 마찬가지이다.)
<script> var str1 = "javascript"; var str2 = '100'; var str3 = '<h1>String</h1>' // str3 = '<a href="#">string</a>' "<a href="#">string</a>" var str4 = "PJ\n안녕하세요\n반갑습니다." var str5 = '제 이름은 "PJ" 입니다.' var str6 = "제 이름은 'PJ' 입니다." var str7 = '제 이름은 \'PJ\'입니다.' document.write(str1, '<br>'); document.write(str2, '<br>'); document.write(str3, '<br>'); document.write(str4, '<br>'); console.log(str4) // \n은 console 창에서 줄바꿈되어 나온다. document.write(str5, '<br>'); document.write(str6, '<br>'); document.write(str7, '<br>'); </script>
논리형
불린(boolean) 유형이라고도 하며, 참(true)이나 거짓(false)의 값을 표현하는 자료형
- 어떤 조건을 확인해서 그 조건이 맞으면 true, 맞지 않으면 false의 결괏값을 나타낸다.
- 주로 프로그램에서 조건을 확인할 때 사용한다.
- 0, "", NaN, null, undefined는 부정 연산자와 만나면 참으로 판명된다.
<script> var bool1 = true; var bool2 = false; var bool3 = 10 < 5; // false var bool4 = Boolean('SBS'); // 0, null, undefined를 제외한 나머지 true document.write(bool1, '<br>'); document.write(bool2, '<br>'); document.write(bool3, '<br>'); document.write(bool4, '<br>'); if(true){ document.write('true입니다. <br>'); } if(false){ document.write('true입니다. <br>'); } if(bool1){ document.write('true입니다. <br>'); } if(!false){ document.write('부정연산자 <br>'); } if(0){ document.write('0 <br>'); } if(!0){ document.write('부정연산자 <br>'); } </script>
undefined 유형과 null 유형
- undefined
- 자료형이 정의되지 않았을 때의 데이터 상태
- 자바스크립트에서는 변수를 선언할 때 자료형을 미리 정하지 않고 값을 할당할 때 결정한다.
-변수 선언만 하고 값이 할당되지 않은 자료형을 undefined라고 한다.
(즉, 단순히 '변수에 값이 할당되지 않았다'는 의미이다.) - null
- 데이터의 값이 유효하지 않은 상태
<script> var b; // 값을 넣지 않았을 때, 변수는 존재해서 메모리 공간은 있지만, 값이 정의되지 않음. var c = null; // 값이 없다. 값이 없다는 것을 명시 document.write(b, '<br>'); document.write(c, '<br>'); </script>
배열
하나의 변수에 값을 여러 개 저장할 수 있다.
- 배열은 여러 개의 데이터 값을 하나의 배열 이름으로 묶어서 선언한다.
- 데이터 값을 쉼표로 구분해서 대괄호([ ])로 묶으면 배열을 선언할 수 있는데, 대괄호 안에 값을 입력하지 않으면 빈 배열이 만들어진다.
- 빈 배열도 배열을 선언한 것이다.
배열명["값1", "값2", ...] 배열명[ ]
객체 타입 (Object)
- key값은 숫자로 시작하지 않는 영어 대소문자, 숫자 및 언더바 사용
<script> let dog = { name : '흰둥이', age : 3, color : 'white', 6 : 'test' }; document.write(dog, '<br>'); console.log(dog); document.write(dog.name, '<br>'); document.write(dog.age, '<br>'); document.write(dog.color, '<br>'); document.write(dog[6], '<br>'); let cat = {}; console.log(cat); console.log(cat.name); console.log(cat[0]); cat.name = '야옹이'; cat[0] = 2; console.log(cat); console.log(cat.name); console.log(cat[0]); </script>
심불 (Symbol)
- 심불은 ECMAScript6에서 추가된 데이터 형식이다.
- 심불은 유일하고 변경할 수 없는 타입으로, 충돌 위험이 없는 유일한 객체의 식별자로 사용할 수 있다.
<script> var sym = Symbol('javaScript'); // 심볼타입 var sym2 = Symbol('SBS'); var sym3 = Symbol('SBS'); console.log(sym2 == sym3) console.log(typeof sym2) </script>
728x90
'Front-End (웹) > 자바스크립트' 카테고리의 다른 글
조건문 (0) | 2022.01.20 |
---|---|
연산자 (0) | 2022.01.16 |
변수 (0) | 2022.01.14 |
자바스크립트 용어와 기본 입출력 방법 (0) | 2022.01.13 |
웹 브라우저랑 자바스크립트 (0) | 2022.01.13 |
Comments