정적 메서드
Array.from() 정적 메서드는 순회 가능 또는 유사 배열 객체에서 얕게 복사된 새로운 Array 인스턴스를 생성합니다.
console.log(Array.from('foo'));
console.log(Array.from([1, 2, 3], (x) => x + x));
Array.fromAsync() 정적 메서드는 비동기 순회 가능, 순회 가능, 또는 유사 배열 객체에서 얕게 복사된 새로운 Array 인스턴스를 만듭니다. 반환값은 이행 값이 새 Array 인스턴스인 새로운 Promise입니다.
async function fetchData(url) {
const response = await fetch(url);
return response.json();
}
async function getAllData() {
const urls = ["https://api.example.com/data1", "https://api.example.com/data2"];
const dataArray = await Array.fromAsync(urls.map(fetchData));
console.log(dataArray);
}
Array.isArray() 정적 메서드는 전달된 값이 Array인지 판단합니다.
Array.of() 주어진 인자들로 새로운 배열을 생성하는 정적 메소드입니다. 이 메소드는 주로 배열 리터럴과 비슷하지만, 주로 단일 항목으로 배열을 동적으로 만들때 사용합니다.
인스턴스 메서드
조작 메소드 (Mutator methods): 배열의 내용을 직접 변경합니다.
at(): 배열의 특정 인덱스에 있는 요소를 반환하는 함수입니다. 양수 인덱스는 배열의 앞에서부터 요소를 찾고, 음수 인덱스는 배열의 뒤에서부터 요소를 찾습니다
slice(): 배열의 부분을 복사하여 새 배열을 생성합니다.
includes(): 배열에 특정 요소가 있는지 확인합니다.
indexOf(), lastIndexOf(): 요소의 첫 번째 또는 마지막 인덱스를 찾습니다.
find(), findIndex(): 조건을 만족하는 첫 번째 요소 또는 그 인덱스를 반환합니다.
const array1 = ['a' , 'b' , 'c' , '', 'd', 'e'];
const found = array1.find((element) => element === 'a');
console.log(found);
// Expected output: a
const findd = (element) => element === 'd';
console.log(array1.findIndex(findd));
// Expected output: 4
findLast(), findLastIndex(): 조건을 만족하는 마지막 요소 또는 그 인덱스를 반환합니다.
push(), pop(): 배열 끝에 요소를 추가하거나 제거합니다.
shift(), unshift(): 배열 시작 부분에 요소를 추가하거나 제거합니다.
splice(): 배열에서 요소를 추가, 제거, 교체합니다.
sort(): 배열을 정렬합니다.
reverse(): 배열의 순서를 뒤집습니다.
fill(): 배열의 일정 범위를 정해진 값으로 채웁니다.
join(): 배열의 모든 요소를 문자열로 결합합니다.
toLocaleString(): 지역화된 문자열로 배열을 표현합니다.
toString(): 배열을 문자열로 변환합니다
keys(): 배열의 각 인덱스에 대한 키를 포함하는 이터레이터를 반환합니다.
values(): 배열의 각 인덱스의 값을 반환하는 이터레이터를 생성합니다.
entries(): 배열의 각 인덱스의 키와 값을 쌍으로 포함하는 이터레이터를 반환합니다.
flat(): 중첩 배열을 지정된 깊이까지 평탄화합니다.
flatMap(): 각 요소에 함수를 적용하고 평탄화하여 새 배열을 생성합니다.
toSorted(): 정렬된 새 배열을 생성합니다.
toReversed(): 순서가 반대인 새 배열을 생성합니다.
toSpliced(): splice()와 유사하게 새 배열을 생성합니다.
with(): 지정된 위치의 요소를 교체한 새 배열을 생성합니다.
forEach(): 배열의 각 요소에 대해 함수를 실행합니다.
map(): 각 요소에 함수를 적용한 결과로 새 배열을 생성합니다.
filter(): 조건을 만족하는 요소만으로 새 배열을 생성합니다.
reduce(), reduceRight(): 배열의 각 요소를 하나의 값으로 축약합니다.
const numbers = [1, 2, 3, 4, 5];
function Add(arr) {
return arr.reduce((acc, cv) => acc + cv);
}
function Multiply(arr) {
return arr.reduce((acc, cv) => acc * cv);
}
function applyFunctions(array, functions) {
return functions.reduce((acc, func) => func(array), array);
}
const result = applyFunctions(numbers, [Add, Multiply]);
console.log(result);
function applyFunctionsfix(array, functions) {
return functions.reduce((acc, func) => func(acc), array);
}
const resultfix = applyFunctionsfix(numbers, [Add, Multiply]);
console.log(resultfix);
every(), some(): 모든 요소 또는 일부 요소가 특정 조건을 만족하는지 검사합니다.