데이터 타입 1
runtime : 코드가 실행될 때 걸리는 시간
1-1. 정수
let num1 = 10;
console.log(num1); // 10
console.log(typeof num1); // number, num1 = "10"으로 할당할 경우 string이 출력된다.
1-2. 실수(float)
let num2 = 3.14;
console.log(num2); // 3.14
console.log(typeof num2); // number, num2 = "3.14"으로 할당할 경우 string이 출력된다.
1-3. 지수형(Exp)
let num3 = 2.5e5; //2.5 X 10^5와 같은 의미
console.log(num3); //250000
console.log(typeof num3); // number
1-4. Not a Number, NaN
let num4 = "Hello" / 2;
console.log(num4); // NaN이 출력된다. Not a Number라는 의미이다.
console.log(typeof num4); // 하지만 데이터타입은 여전히 number이다?
Stack overflow - Why does typeof NaN return 'number'?:
이상하게 보일 수 있지만 "Not a Number"는 여전히 숫자의 유형이다.
ECMA International:
Number type
set of all possible Number values including the special “Not-a-Number” (NaN) values, positive infinity, and negative infinity
양수의 무한대, 음수의 무한대, 특수한 "Not a Number"(NaN)을 포함하여 가능한 모든 수의 값의 집합
1-5. Infinity(양의 무한대)
let num5 = 1 / 0;
console.log(num5); // Infinity
console.log(typeof num5); // number
1-6. - Infinity(음의 무한대)
let num6 = -1 / 0;
console.log(num6); // -Infinity
console.log(typeof num6); // number
let str = "Hello World!";
console.log(str); // 출력: Hello World!
console.log(typeof str); // 출력: string
2-1. 문자열 길이 확인하기 .length
console.log(str.length); // 출력: 12
//length는 변수의 값이 가지고 있는 길이를 출력한다.
2-2. 문자열 결합하기 .concat
let str1 = "Hello, ";
let str2 = "World!";
let result = str1.concat(str2) // concat. concatenation(컨케트네이션) '연속' (명사)
console.log(result); // Hello, world!
2-3. 문자열 자르기 .substr, .slice
let str3 = "Hello, World!";
console.log(str3.substr(7, 5)); // 출력: World
substring. str을 자른다. 예시에서는 7번째 글자부터 시작해서 5번째까지 글자를 제외한 나머지를 잘라냈다.
console.log(str3.slice(7, 12)); // 출력: World
slice. str을 자른다. 예시에서는 7~12 글짜를 제외한 나머지를 잘라낸다.
둘의 차이는 substring이 시작 위치부터 시작해서 몇 개만큼 자를 것인가를 지정하고
slice는 전체 string에서 잘라낼 시작과 끝을 지정한다.
2-4. 문자열 검색 .search
let str4 = "Hello, World!";
console.log(str4.search("World")); // 출력: 7
// search. 문자를 찾는다. 검색대상인 "World"가 7번째부터 시작된다고 출력된다.
2-5. 문자열 대체 .replace
let str5 = "Hello, World!";
let result01 = str5.replace("World", "javascript"); // replace. 대체한다.
// 예시에서는 World를 javascript로 대체하였다.
console.log(result01); // 출력: Hello, javascript!
2-6. 문자열 분할
let str6 = "apple, banana, kiwi";
let result02 = str6.split(","); // spilt. 쪼갠다. 예시에서는 쪼개는 기준을 ","로 지정하였다.
console.log(result02); // 출력: [ 'apple', ' banana', ' kiwi' ]
// 본디 문자열이었던 "apple, banana, kiwi"가 ","를 기준으로 쪼개져 배열의 형태로 출력되었다.