[TIL/모던 자바스크립트 Deep Dive] 2023/08/28
27장. 배열 🟢
27장. 배열 🟢
27-8. 배열 메서드 🟡
Array.prototype.join 🟣
join 메서드는 원본 배열의 모든 요소를 ``문자열`로 변환한 후, `구분자(=인수로 전달받은 문자열)``로 연결한 문자열을 반환한다. 구분자는 생략 가능하며, 기본 구분자는 콤마(',')다. 예제 코드를 살펴봤다.

사실상 영어 단어 공부라고 할 수 있다.

Array.prototype.reverse 🟣
reverse 메서드는 원본 배열의 순서를 반대로 뒤집는다. 원본 배열이 변경되며, 반환값은 변경된 배열이다.

Array.prototype.fill 🟣
fill 메서드는 ES6에서 도입되었다. 인수로 전달받은 값을, 배열의 처음부터 끝까지 요소로 채운다. 이때 원본 배열이 변경된다.

두 번째 인수로, 요소 채우기를 시작할 인덱스를 전달할 수 있다.

세 번째 인수로, 요소 채우기를 멈출 인덱스를 전달할 수 있다.

fill 메서드를 사용하면, 배열을 생성하면서 특정 값으로 요소를 채울 수 있다. 예제 코드를 살펴봤다.

fill 메서드로 요소를 채울 경우, 모든 요소를 하나의 값만으로 채울 수밖에 없다는 단점이 있다. Array.from 메서드를 사용하면, 두 번째 인수로 전달한 콜백 함수를 통해 요소값을 만들면서 배열을 채울 수 있다.

Array.prototype.includes 🟣
includes 메서드는 ES7에서 도입되었다. 배열 내에 특정 요소가 포함되어 있는지를 확인하여 true 또는 false를 반환한다. 첫 번째 인수로 검색할 대상을 지정한다.

두 번째 인수로, 검색을 시작할 인덱스를 전달할 수 있다. 두 번째 인수를 생략할 경우에는 기본값이 0으로 설정된다. 만약 두 번째 인수에 음수를 전달하면, 'length 프로퍼티 값'과 '음수 인덱스'를 합산하여 검색 시작 인덱스를 설정한다.

=> 아래 설명은 명확하게 이해되지 않았음
배열 내에 특정 요소가 포함되어 있는지를 확인하기 위해 indexOf 메서드를 활용할 수도 있다. 하지만 indexOf 메서드를 사용하면 반환값이 -1인지 확인해 보아야 하고, 배열에 NaN이 포함되어 있는지 확인할 수 없다는 문제가 있다.

Array.prototype.flat 🟣
ES10에서 도입된 flat 메서드는, 인수로 전달한 깊이만큼 재귀적으로 배열을 평탄화한다.

예?

큰 틀의 배열 내부에서, '중첩된 부분'을 깎아준다고 보면 된다.
중첩 배열을 평탄화할 깊이를 인수로 전달할 수 있다. 인수를 생략할 경우 기본값은 1이다. 인수로 Infinity를 전달하면 중첩 배열 모두를 평탄화한다.

정리 ✍️
1)join, 2)reverse, 3)fill, 4)includes, 5)flat 메서드를 살펴봤다.
1)``join`은 내가 인수로 전달한 구분자로 요소들을 `연결``해 주는 메서드다.
2)``reverse`는 배열을 `정반대``로 뒤집은 새로운 배열을 반환하는 메서드다. 원본 배열을 직접 변경한다.
3)``fill`은 내가 전달한 인수로 `배열의 요소를 채운다``. 하나의 값만으로 채울 수밖에 없다는 한계 때문에, Array.from 메서드의 개념을 살펴봤다.
4)``includes`는 `특정 요소가 포함되어 있는지`를 `true와 false``라는 반환값을 통해 체크할 수 있도록 도와주는 메서드다. indexOf도 includes와 유사한 역할을 수행할 수 있음을 확인했다. indexOf의 한계를 명확히 이해하지 못했다는 아쉬움을 남겼다.
5)``flat`은 중첩 배열을 `평탄화``하는 기능을 수행한다. 인수로 평탄화의 단계를 설정할 수 있음을 알게 되었다.
More to read
프론트엔드와 백엔드 사이
HTTP 상태 코드는 프론트엔드에서 백엔드로 보냈던 요청의 수행 결과를 의미하는 일종의 약속이며, API를 구성하는 핵심 요소 중 하나입니다. 상태 코드와 관련하여, 백엔드는 잘 모르는 프론트엔드의 슬픈 사정이 있습니다.아래는 요청이 실패했음에도, 백엔드에서 상태 코드
JWT토큰 관리 방식 톺아보기
0. 들어가며 🎯 서비스에 접근하려는 사용자가 누구인지 확인하는 과정을 사용자 인증이라고 합니다. 인증된 사용자에게 주어진 권한을 확인하는 작업은 인가라고 부릅니다. 이번 글에서는 인가는 다루지 않습니다. 사용자 인증에는 많은 방식이 있지만, 오늘은 세션 인증 방
A2AA2A / MCP 멀티 에이전트 오케스트레이션
0. 들어가며 ✍️ Google for Developers에, 레스토랑 공급망 시나리오로 엮은 6대 프로토콜(MCP, A2A, UCP, AP2, A2UI, AG-UI)에 대한 가이드가 게시된 이후, MCP와 A2A부터 구현해 보는 것이 좋을 것 같다는 생각이 들었습니