const str = 'Hello world'
str.length
str.includes('abc') // str에 'abc' 포함되어있는지
str.includes('abc', i) // 인덱스 i 이후에 'abc' 포함되어있는지
str.indexOf('abc') // 'abc'와 일치하는 첫번째 인덱스 (없으면 -1)
str.padEnd(n, 'a') // 문자 길이가 n 이하이면 길이가 n이 될때까지 a를 뒤에 붙여서 반환
str.padStart(n, 'a') // 앞에 붙여서 반환
str.replace(전, 후) // 문자 교체 (처음꺼만)
str.replace(/전/g, 후) // 모든 문자 교체
str.slice(a,b) // a 인덱스부터 b-1 인덱스까지 슬라이싱
str.slice(a) // a부터 끝까지 슬라이싱
// 슬라이싱 할때는 음수 사용 가능
str.split(s) // s를 기준으로 split (비워두면안됨)
str.split('') // 알파벳 하나하나 split
str.toLowerCase() // 소문자로
str.toUpperCase() // 대문자로
str.trim() // 앞뒤 공백문자 제거해서 반환
프로토타입
const num = 3.1415
num.toFixed(x) // x번째 소수점 자리까지 잘라서 "문자로" 반환
num.toLocaleString() // 숫자에 쉼표 넣어서 문자로 반환 (10,000)
Number 클래스의 정적 메서드
Number.isInteger(x) // x가 정수인지 아닌지 확인
Number.isNaN // NaN 인지 확인
Number.parseInt(문자or실수, n진수) // n진수의 정수로
Number.parseFloat(문자or정수) // 실수로
Math.abs(x) // 절대값
Math.ceil(x) // 올림 (정수)
Math.floor(x) // 내림 (정수)
Math.round(x) // 반올림 (정수)
Math.max(x, y, z, ...) // 최댓값
Math.min(x, y, z, ...) // 최솟값
Math.pow(x,y) // x의 y승
Math.random() // 0 이상 1 미만 난수 발생
new Date() // 현재 시간
new Date(년, 월, 일, 시, 분, 초) // 특정 시간 -> 타임 스탬프
// 월만 제로베이스넘버로 표기
new Date('문자열 날짜') // 문자열 -> 타임스탬프
const date = new Date()
date.getFullYear() // 연도만 추출 (int)
date.setFullYear(YYYY) // date의 연도가 변경됨
date.getMonth() // 월 만 추출 (int, zerobased)
date.setMonth(0) // 1월로 변경
date.getDate() // 일 만 추출 (int)
date.setDate(int) // 날짜가 변경됨
date.getHours() // 시간만 추출 (int)
date.setHours(int) // 시간이 변경됨
date.getMinutes() // 분 만 추출 (int)
date.setMinutes(int) // 분이 변경됨
date.getSeconds() // 초 만 추출 (int)
date.setSeconds(int) // 초가 변경됨
date.getDay() // 요일 (int, 일:0 ~ 토:6)
date.getTime() // 유닉스타임 타임스탬프
date.setTime(int) // 이 타임스탬프 시간으로 변경됨
Date.now() // 호출될 때 마다 현재시간
const arr = [1, 2, 3]
arr.at(i) // (음수 사용 가능) 인덱싱
A.concat(B) // A 배열과 B 배열 합치기
[...A, ...B] // A 배열과 B 배열 합치기 (전개 연산자)
arr.every(콜백함수) // 콜백 테스트에서 모든 요소가 참을 반환하는지 확인
arr.every(item => item < 5) // true
arr.filter(콜백함수) // 콜백 테스트에서 참인 요소들만 배열로 반환
arr.find(콜백함수) // 콜백 테스트를 통과하는 첫 번째 요소
arr.findIndex(콜백함수) // 콜백 테스트를 통과하는 첫 번째 요소의 인덱스
arr.flat(m) // n차원 배열을 n-m차원으로 (기본값 : 1)
arr.flat(Infinity) // 1차원으로
arr.forEach(콜백함수) // 배열의 길이만큼 콜백을 실행
arr.forEach(item => console.log(item))
arr.inclues(a) // a를 포함하고 있는지 확인
arr.join(str) // 배열 요소들을 str로 연결한 문자열 반환
arr.map(콜백함수) // 콜백함수 반환값을 모아 새로운 배열 반환
arr.pop() // 마지막 요소 제거
arr.push(a, b, ...) // 요소를 추가하고 새로운 길이를 반환
arr.reduce(콜백함수, 초기값) // 콜백을 실행하고 반환 값을 다음 콜백함수로 넘김
arr.reverse() // 배열 뒤집기
arr.shift() // 첫번째 요소 제거
arr.slice(a,b) // a번째에서 b번째 직전까지의 배열을 생성
arr.slice(a) // a번째부터 끝까지
arr.some(콜백함수) // 콜백테스트 통과 요소가 하나라도 있는지 확인
arr.sort() // 문자열 순서로 정렬 (10이 2보다 먼저임)
arr.sort(콜백함수) // 콜백함수 반환값을 정렬
arr.sort((a,b) => a - b) // 오름차순 숫자 정렬
arr.sort((a,b) => b - a) // 내림차순 숫자 정렬
arr.sort((a,b) => a.age - b.age)
// 객체에서 sort 사용
arr.splice(i, n, x, y, ...)
// i 위치부터 요소 n개를 삭제하고, 요소 x, y, ...를 삽입
arr.unshift(x) // 맨 앞에 요소 x를 추가
정적 메소드
Array.isArray(arr) // 배열 데이터인지 확인
Array.from(arrylike) // 유사 배열을 실제 배열으로
※ 유사 배열이란
const arrlike = {
0: 'a',
1: 'b',
length = 2
}
정적 메소드
Object.assign(target, source1, source2)
// 병합, 같은 속성이 있을 경우 앞 객체에 속성을 덮어쓰기
Object.assign({}, source1, source2, ...)
Object.entries() // [[속성1,값1], [속성2,값2], ... ] 2차원 배열을 만듦
Object.keys() // 속성을 모아서 배열로 반환
Object.values() // 값을 모아서 배열로 반환
데이터 전달을 위한 표준 포맷
문자, 숫자, 불린, Null, 객체, 배열 사용 가능
백틱, 작은따옴표 사용 불가, 큰 따옴표만 사용 가능
하나의 파일에는 하나의 데이터만 작성 가능
JSON.stringify() // 데이터를 JSON 문자로 변환
JSON.parse() // JSON 문자를 데이터로 변환
import data from 'file.json' // 자바스크립트에 json 데이터 불러오기