오늘은 새로운 내용을 배우기보다는 기존에 배웠던 내용을 토대로 JS 코드를 작성하는 것이 대부분이었다.
문자열
- JS에는 문자열을 나타내는 객체(String)이 존재하며
문자열과 관련된 기본적인 함수를 제공해준다.
문자열 관련 주요 함수
- substring():
시작 이상 종료 미만 만큼의 문자열을 잘라서 반환const str1 = "Hello World!"; str1.substring(0, 5); // Hello str1.substring(6, 11); // World
- split():
구분자를 기준으로 문자열을 나누어 배열 형태로 반환const str2 = "김치찌개/샌드위치/마라탕/햄버거/김밥/초밥"; const arr2 = str2.split("/"); for(let menu of arr2){ console.log(menu); // 위 메뉴가 배열로 반환 }
숫자
- Math:
숫자 관련 함수를 제공하는 JS 내장 객체- 숫자(number) 타입 리터럴 표기법:
- 12(정수)
- 3.14(실수)
- Infinity(무한)
- NaN(Not a Number)
// Infinity 리터럴 확인 console.log(5/0); // Infinity // NaN 리터럴 확인 console.log("abc" + 100); // NaN
숫자 관련 주요 함수
- Math.random():
0.0 이상 1.0 미만의 실수 형태의 난수를 생성하는 함수- isNaN():
연산/값의 결과가 NaN이면 true 반환if(isNaN("abc" * 100)){ console.log("숫자만 * 연산을 할 수 있습니다."); }
- Math.celi(): 올림 처리
- Math.floor(): 내림 처리
- Math.trunc(): 버림 처리
- Math.round(): 반올림 처리
- toFixed():
부동 소수점을 문자열 형태의 고정 소수점으로 변경하는 함수
주어진 숫자를 매개변수에 작성된 숫자만큼의 소수점 자릿수로 표현될 수 있도록
바로 다음 소수 자리에서 반올림해서 문자열로 반환(3.45).toFixed(1); // 문자열 '3.5' (3.456).toFixed(2); // 문자열 '3.46'
형변환 관련 주요 함수
- parseInt():
문자열을 정수로 변환 가능- parseFloat():
문자열을 정수와 실수로 변환 가능
- "정수" -> 정수
- "실수" -> "실수"
- Number():
문자열을 정수와 실수로 변환 가능
- "정수" -> 정수
- "실수" -> "실수"
동등/동일 비교 연산자
- 동등 비교 연산자(==, !=):
값이 같으면 true (자료형 관계 없음)- 동일 비교 연산자(===, !==):
값과 자료형이 모두 같으면 true"1" == 1 // true "1" === 1 // false
배열
- Java 배열: 같은 자료형의 변수를 묶음으로 다루는 것
- JS 배열: 변수를 묶음으로 다루는 것
- JS 배열의 특징
1) 자료형 제한이 없음
2) 길이 제한이 없음
3) 배열에 지정된 인덱스가 없으면 자동으로 추가
4) 중간에 인덱스를 건너 뛰더라도 건너 뛴 자리를 비워둠arr1[0] = '가나다'; arr1[2] = 123; arr1[3] = 1.23; arr1[4] = true; arr1[5] = {"id":"user01", "pw":"pass01"}; console.log(arr1);
배열 선언 방법
- 크기를 정하지 않은 배열 선언
const arr = new Array(); const arr = [];
- 크기를 정한 배열 선언
const arr = new Array(5);
- [ ]를 활용한 초기화
const arr = [10, 20, 30, 40, 50];
- new연산자를 활용한 초기화
const arr = new Array(10, 20, 30, 40, 50);
배열 관련 주요 함수
- 배열 관련 함수는 prototype이 Array인 배열에만 사용이 가능하다.
(Object, NodeList, HTMLCollection에는 사용 불가)- push(): 배열 마지막 요소로 추가
- pop(): 배열 마지막 요소를 꺼내옴
- unshift(): 배열 첫번째 요소로 추가
- shift(): 배열 첫번째 요소를 꺼내옴
- indexOf():
배열 내 요소 중 값이 일치하는 요소의 index 반환
(없으면 -1 반환)- sort():
배열을 정렬 기준 함수에 맞춰 정렬
(정렬 기준 함수 미작성 시 문자열 순서로 정렬)const arr2 = [5, 3, 2, 10, 1]; console.log(arr2.sort()); // 기본값인 문자열로 취급 console.log(arr2.sort(function(a,b){return a-b;})); // 정렬 기준오름차순 함수 추가 console.log(arr2.sort((a,b) => b-a)); // 정렬 기준 내림차순 함수 추가
- toString():
모든 요소를 하나의 문자열로 반환
(요소 사이에 , 추가)- join():
모든 요소를 하나의 문자열로 반환
(요소 사이에 구분자 추가)console.log(arr.join("/"));
- forEach(function(value){}):
배열 요소를 하나씩 순서대로 꺼내서 value에 저장한 다음
function 내부 코드를 순서대로 수행arr.forEach(function(value){ console.log("값: " + value); })