Array.prototype.every() 를 활용하여 TypeScript에서 배열 내부의 모든 원소에 대한 타입 검사를 수행하려면 every 메서드를 사용할 수 있다. every 메서드는 배열의 각 원소에 대해 주어진 조건을 모두 만족하는지 확인한다.
1. Array.prototype.every() 활용
function checkAllElementsAreOfType<T>(arr: T[], type: string): boolean {
return arr.every((item) => typeof item === type);
}
// 예시 사용
const numbers = [1, 2, 3, 4, 5];
const strings = ['Hello', 'World'];
console.log(checkAllElementsAreOfType(numbers, 'number')); // 출력: true
console.log(checkAllElementsAreOfType(strings, 'string')); // 출력: true
const mixedArray = [1, 'Hello', true];
console.log(checkAllElementsAreOfType(mixedArray, 'number')); // 출력: false
위의 예시에서 checkAllElementsAreOfType 함수는 arr 배열 내부의 모든 원소가 주어진 type과 일치하는지 확인한다. every 메서드를 사용하여 배열의 모든 원소에 대해 typeof item === type 조건을 검사하고, 모두 true를 반환하면 함수는 true를 반환한다. 타입 검사를 위해 다른 조건을 사용하거나 원소 타입이 복잡한 경우, 적절한 조건을 every 메서드 내부에 작성하면 된다.
반응형
'Coding > TypeScript' 카테고리의 다른 글
[TypeScript] 배열 내부의 원소 검사(하나라도 만족할 경우) - Array.some() (0) | 2023.08.28 |
---|---|
[TypeScript] 일주일 전부터 현재까지 시간 배열에 넣기 (0) | 2023.08.28 |