JavaScript 배열 메서드 - 일부 및 모두
7439 단어 beginnersjavascriptwebdev
.some()
와 .every()
에 대해 말씀드리겠습니다. 이중 지식. 나는 이것을 .map()
또는 .filter()
만큼 자주 사용하지는 않지만 특정 시나리오에서 매우 유용합니다. 결과적으로 둘 다 부울 값을 반환하기 때문에 이러한 방법을 함께 그룹화했습니다. 따라서 함께 배우는 것이 합리적이었습니다. 게다가 그들은 매우 짧습니다.Array.prototype.some()
지금까지 이야기한 다른 방법과 마찬가지로
.some()
도 함수를 인수로 사용합니다(일명 콜백). .some()
메서드는 테스트를 통과한 배열의 첫 번째 값/요소에 대해 true
를 반환하고 그렇지 않은 경우 false
를 반환합니다.예제에서
typeof
연산자를 사용하겠습니다. 이 연산자는 데이터 유형이 무엇인지 알려주는 문자열을 반환합니다.예시:
let stoppingIndex;
const arrOfDataTypes = ["this is a string",
93,
false,
72n,
true,
false,
{
name: "Tanwa",
hobby: ["coding", "gaming"]
}
]
function callbackCheckBool(a) {
return typeof a === 'boolean';
}
console.log(arrOfDataTypes.some( (element, index) => {
stoppingIndex = index;
return callbackCheckBool(element);
}));
// true
console.log(stoppingIndex); // 2
console.log(arrOfDataTypes.some( element => typeof element === 'undefined'));
// false
위의 예에서 배열에 데이터 유형
'boolean'
인 일부 값/요소가 있는지 확인하고 싶었습니다. 배열에는 인덱스에서 부울 유형인 요소true
가 포함되어 있기 때문에 이 값"false"
이 반환됩니다. 2
여기서 .some()
메서드가 중지되었습니다. 두 번째 .some()
테스트에서는 'undefined'
데이터 유형을 확인합니다. 배열에 반환된 값 유형이 false
없기 때문입니다.Array.prototype.every()
배열의 모든 값/요소가 콜백 함수 테스트를 통과하는 경우에만
.every()
메서드가 true
를 반환한다고 추측하면 정답이 됩니다! .every()
는 .some()
의 반대라고 생각합니다. 한 요소가 테스트에 실패하는 즉시 false
를 반환하기 때문입니다.예시:
const arrOfStrings = ["How", "long", "is", "a", "piece", "of", "string?", 1];
const arrOfTwos = [2,2,2,2,2];
console.log(arrOfStrings.every( element => typeof element === 'string')); // false
console.log(arrOfTwos.every( element => element === 2)); // true
위의 예가 간단하기를 바랍니다. 배열의 모든 값/요소가 유형
'string'
인지 확인했지만 마지막에 비열한 숫자false
때문에 이 반환 값1
이 있습니다! 그리고 두 번째.every()
테스트에서는 모든 요소가 테스트를 통과하여 true
를 반환합니다.요약
.some()
메서드는 콜백 함수 테스트를 통과한 배열의 첫 번째 값/요소를 확인하고 true
를 반환하고, 테스트를 통과한 값을 찾지 못하면 false
를 반환합니다. .every()
메서드는 콜백 함수 테스트에 실패한 배열의 첫 번째 값/요소를 확인하고 false
를 반환하거나 모든 값이 테스트를 통과하면 true
를 반환합니다.여기까지 읽어주셔서 감사하고, 제가 잘못 이해한 부분이 있으면 언제나 댓글과 피드백 부탁드립니다.
Reference
이 문제에 관하여(JavaScript 배열 메서드 - 일부 및 모두), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/justtanwa/javascript-array-methods-some-every-30bb텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)