행복을 담는 블로그
[Javascript] 데이터 타입(data type) 본문
📕 Javascript의 데이터 타입과 형 변환
✅
Data type
의 결정
:runtime (run 하는 time)
에 결정
=코드를 작성
할 때가 아닌, 실제코드가 실행
될 때
= 옆에터미널에 코드가 실행
될 때 ▶️ 그때 데이터 타입이 결정된다.
ex)
<java> : String a ="abc"; // 이렇게 data type : String임을 표시해야함.
<javascript> : const a = "abc"; // 변수만 선언
1. Javascript의 데이터 타입(data type)
1) 숫자(number)
1️⃣ 정수 (int)
let num1 = 10;
console.log(num1); // 10
console.log(typeof num1); // number
2️⃣ 실수(float)
let num2 = 3.14;
console.log(num2); // 3.14
console.log(typeof num2); // number
3️⃣ 지수형 (exp)
let num3 = 2.5e5;
console.log(num3); // 250,000
console.log(typeof num3); // number
4️⃣ Nan : Not a Number
let num4 = "Hello" /2;
console.log(num4); // Nan
5️⃣ Infinity(무한대)
let num5 = 1 / 0;
console.log(num5); // Infinity
console.log(typeof num5); // number
6️⃣ Minus Infinity(마이너스 무한대)
let num6 = -1 / 0;
console.log(num6); // Minus Infinity
console.log(typeof num6); // number
2) 문자열 (string)
📌 String (문자열 = 문자의 나열)
:
' '
=" "
(작은 따옴표 또는 큰 따옴표)
let str = "Hello World!";
console.log(str); // Hello World!
console.log(typeof str); // String
1️⃣ 문자열 길이 확인하기
: length
console.log(str.length); // 12
2️⃣ 문자열 결합하기
: concat (Concaternation)
let str1 = "Hello, ";
let str2 = "World!";
let result = str1.concat(str2)
console.log(result); // Hello, World!
3️⃣ 문자열 자르기
: substr, slice
- substr(from : number(자르기 시작하는 숫자), length : number(자르는 문자열 몇 개))
- slice(starting number, end number)
let str3 = "Hello, World"
console.log(str3.substr(7,5)); // World
console.log(str3.slice(7, 12)); // World
4️⃣ 문자열 검색
: search
let str4 ="Hello, World";
console.log(str4.search("World")); // 7
5️⃣ 문자열 대체
: replace
let str5 = "Hello World!";
let result01 = str.replace("World", "Javascript");
console.log(result01); // Hello Javascript!
6️⃣ 문자열 분할
: split
let str6 = "apple, banana, kiwi";
let result02 = str6.split(",");
console.log(result02); // ['apple', 'banana', 'kiwi'] : 문자열이 분할 되어 "배열" 형태로 나타난다!!
3) 불리언(Boolean)
📌
불리언(Boolean)
: true(참) 또는 false(거짓)
let bool1 = true; // "true"라고 쓰면 문자열이 되므로 조심!
let bool2 = false;
console.log(bool1); // true
console.log(typeof bool1); // boolean
console.log(bool2); // false
console.log(typeof bool2); // boolean
▶️ if : 만약 ~ 한다면! (조건문에서 Boolean type
많이 사용)
4) undefined
: 값이 할당되지 않은 변수 (un : not, define : 정의하다)
let x;
console.log(x); // undefined
5) null
: 값이 존재하지 않음을 '명시적'으로 나타내는 방법
(개발자가 의도적으로 값을 지정하지 않은 것)
- null 과 undefined은 다르다!
let y = null;
console.log(y); // null
6) object(객체) : { }
: key-value(data type 아무거나 가능) pair
를 기억
let person ={
name : 'kim',
age : 25,
isMarried : false
};
console.log(typeof person); // object
7) array (배열) : [ ]
: 여러 개의 데이터를 순서대로 저장하는 데이터 타입
- 배열은 하나하나 순서를 가지고 있으며, index
를 가진다
- index
을 가진다! = (첫 번째 : [0]/ 두 번째 : [1])과 같이 본인 위치에 대한 데이터를 가지고 있다.
let number = [1,2,3,4,5];
let fruits = ['apple', 'banana', 'orange'];
console.log( number); // [1,2,3,4,5]
console.log(typeof number); // object
console.log( fruits); // ['apple', 'banana', 'orange']
console.log(typeof fruits); // object`
2. 데이터 타입의 형 변환
✅ 데이터 타입의 형 변환
:type
의 형태를 바꾼다
암시적 형 변환
: 의도하지 않았는데 형태가 바뀐 것명시적 형 변환
: 개발자가 의도적으로 형태를 바뀌는 것
1) 암시적 형 변환
1️⃣ String (문자열)
: 더하기 연산자(+)
로 형 변환 시, 문자열(String)
이 우세
let result1 = 1+ "2";
console.log(result1); // 12
console.log(typeof result1); // string
// 숫자 + 문자열 = 문자열로 형 변환
let result2 = "1" + true;
console.log(result2); // 1true
console.log(typeof result2); // string
// 문자열 + 다른 데이터 타입 = 문자열로 형 변환
▶️ {}
, null
, nudefined
+ "1" (문자열)
→ 문자열
2️⃣ Number (숫자)
: 더하기 연산자(+)
가 아닌 다른 연산자일때는 숫자(number)
가 항상 우세
let result3 = 1 - "2";
console.log(result3); // -1
console.log(typeof result3); // number
let result4 = "2" * "3";
console.log(result4); // 6
console.log(typeof result4); // number
2) 명시적 형 변환
1️⃣ Boolean (불리언)
console.log(Boolean(0)); // false
console.log(Boolean("")); // false
// ▶️ 빈 문자열 -> false
console.log(Boolean(null)); // false
console.log(Boolean(undefined)); // false
console.log(Boolean(NaN)); // false
console.log(Boolean("false")); // true
// ▶️ 값이 주어지는 문자열 -> true
console.log(Boolean({})); // true
// ▶ 빈 객체 -> true
2️⃣ String (문자열)
let result5=String(123);
console.log(typeof result5); // string
console.log( result5); // 123
let result6=String(true);
console.log(typeof result6); //string
console.log( result6); // true
let result7=String(false);
console.log(typeof result7); //string
console.log( result7); // false
let result8=String(null);
console.log(typeof result8); // string
console.log( result8); // null
let result9=String(undefined);
console.log(typeof result9); // string
console.log( result9); // nudefined
3️⃣ Number (숫자)
let result10 = Number("123");
console.log(result10); // 123
console.log(typeof result10); // number
'FrontEnd > Javascript' 카테고리의 다른 글
[강의 정리 노트] JS 문법 종합반 1주차 (2) | 2024.01.02 |
---|---|
[Javascript] 배열과 배열 메소드 / Array & Array Method (2) | 2024.01.02 |
[Javascript] 객체와 객체 메소드 / Object & Object Method (0) | 2024.01.02 |
[Javascript] 조건문 (if, else if, else, switch) (0) | 2024.01.02 |
[Javascript] 연산자 (Operators) (0) | 2024.01.02 |