concat, indexOf, includes
2020. 2. 15. 21:54ㆍJavaScript
Array, String method의 immutable
- method 사용했을 때 원본 Array, String이 변하지 않으면 immutable, 변하면 mutable
- string method는 전부 immutable
- array method의 경우는 method에 따라 다름
Array.prototype.concat( ) [immutable]
String.prototype.concat( ) [immutable]
- 인자로 전달받은 배열을 기존 배열에 합쳐서 새 배열 반환
- 기존 배열을 변경하지 않음
- 반환값: 합쳐진 새로운 배열 / (문자열일 경우) 문자열
const arr1 = ['HTML', 'CSS', 'JavaScript'];
const arr2 = ['Python', 'Java', 'C'];
const arr3 = arr1.concat(arr2);
//result: ['HTML', 'CSS', 'JavaScript', 'Python', 'Java', 'C']
Array.prototype.indexOf( ) [immutable]
String.prototype.indexOf( ) [immutable]
- 배열에서 인자로 받은 요소 찾을 수 있는 가장 첫 번째의 인덱스 반환
- 존재하지 않는다면 -1 반환
- Array.prototype.includes( ) 의 기능 포함하고 있음
- 반환값: 인자로 전달받은 요소의 첫 번째 인덱스
const arr = ['HTML', 'CSS', 'JavaScript', 'Python', 'Java', 'C', 'HTML'];
console.log(arr.indexOf('JavaScript')); //result: 2
console.log(arr.indexOf('Windows')); //result: -1
console.log(arr.indexOf('HTML', 3)); //result: 6 (3번 인덱스부터 찾기 시작)
Array.prototype.includes( ) [immutable]
String.prototype.includes( ) [immutable]
- 배열이 특정 요소를 포함하고 있는지 판별
- 반환값: Boolean
const arr = ['HTML', 'CSS', 'JavaScript', 'Python', 'Java', 'C'];
console.log(arr.includes('JavaScript')); //result: true
console.log(arr.includes('Windows')); //result: false
'JavaScript' 카테고리의 다른 글
rest parameter, arguments, spread 연산자 (0) | 2020.03.03 |
---|---|
template 태그 & fragment (0) | 2020.03.01 |
split, slice, substring (0) | 2020.02.15 |
object의 메소드 (0) | 2020.02.14 |
Object의 Dot Notation & Bracket Notation, 연산자 (0) | 2020.02.14 |