Summary
- 반복문(for, while Statement)
- 표준 내장 객체(String, Number, Math, Array)
1. for Statement
- for (시작조건; 종료조건; 변화조건) {}
- for of
배열 반복 시 사용
- for in
객체 반복 시 사용
for (const key in heropy) {
console.log(heropy[key])
}
1-1. 반복문 비교
for (let i = 0; i < arr.length; i += 1) {
console.log(arr[i])
}
for (const item of arr) {
console.log(item)
}
arr.forEach(item => {
console.log(item)
})
2. while Statement
- while (조건) {}
조건이 truethy면 무한 반복
let i = 0
while (i < 3) {
console.log(i)
i +=1
}
- do while
일반 while문은 조건이 falsy면 0번 반복
do while문은 조건이 falsy여도 최소 1번 반복
let j = 0
do {
i += 1
} while (j < 3)
3. 표준 내장 객체
3-1. String
- includes (=아이템이 들어있니?)
- indexOf (=아이템이 들어있니? 위치는 어디니?)
- match (정규식 참고)
const str = 'Hello world!'
console.log(
str.match(/^.*(?=\s)/gi)
)
- replace
문자 대체할 때 사용
str.replace('찾을 문자', '대체할 문자')
문자를 지울 때도 사용 가능하다
str.replace('지울 문자', '(공백)')
- slice (~부터 ~직전까지 잘라내기)
중요!! 0부터 시작하는 추출 종료점 인덱스로 그 직전까지 추출
str.slice(0, 11) // 11번 직전, 10번까지 추출
- split
특정 문자 기준으로 쪼개서 배열을 반환
const str = 'Hello World'
const arr = str.split(' ')
console.log(arr)
- toUpperCase
- toLowerCase
- trim 공백문자 제거
3-2. Number
isNaN() & Number.isNaN()
parseInt() & Number.parseInt()
parseFloat() & Number.parseFloat()
3-3. Math
3-4. Array
- concat
인자로 주어진 배열이나 값들을 기존 배열에 합쳐서 새 배열을 반환
- every
- filter
주어진 함수의 테스트를 통과하는 모든 요소를 모아 새로운 배열로 반환
새 배열은 기존 배열보다 길이가 줄어들 수 있다!!
- find
주어진 판별 함수를 만족하는 첫 번째 요소의 값을 반환하고, 그런 요소가 없다면 undefined
- findIndex
주어진 판별 함수를 만족하는 배열의 첫 번째 요소에 대한 인덱스(번호)를 반환하고, 만족하는 요소가 없으면 -1
- join
배열의 모든 요소를 연결해 하나의 문자열로 만든다
- map
배열 내의 모든 요소 각각에 대하여 주어진 함수를 호출한 결과(return)를 모아 새로운 배열을 반환
- shift (맨앞 삭제)
배열에서 첫 번째 요소를 제거하고, 제거된 요소를 반환. 배열의 길이를 변하게 한다
- unshift (맨앞 삽입)
새로운 요소를 배열의 맨 앞쪽에 추가하고, 새로운 길이를 반환
- pop (맨뒤 삭제)
배열에서 마지막 요소를 제거하고 그 요소를 반환
- push (맨뒤 삽입)
배열의 끝에 하나 이상의 요소를 추가하고, 배열의 새로운 길이를 반환
- reduce
- reverse
배열의 순서를 반전하고, 원본 배열 역시 변형된다
- slice
- some
배열 안의 어떤 요소라도 주어진 판별 함수를 통과하는지 테스트
every는 모두 통과, some은 1개라도 통과하는지 테스트
- splice
.splice(인덱스, 삭제계수, 추가데이터)
제거한 요소를 담은 배열을 반환한다