JavaScript의 배열 조작 🧐
2966 단어 webdevjavascriptproductivity
소개
프로그래밍을 시작할 때 배열을 조작하기 위해 자체 루프를 사용하여 자체 함수를 만드는 경향이 있습니다.
실제로 JavaScript를 포함한 거의 모든 OOP 언어는 이를 달성하기 위한 방법을 제공합니다.
JavaScript로 시작하는 경우 이 기사가 정말 유용할 것입니다. 다른 사람들에게는 훌륭한 알림이 될 것입니다.
모든
every 메서드를 사용하면 배열의 모든 요소가 조건을 확인하는지 테스트할 수 있습니다.
이 메서드는 모든 요소가 테스트를 확인하면 true를 반환하고, 그렇지 않으면 false를 반환합니다.
조건은 함수입니다.
예를 들어 다음 예제는 배열의 모든 '인간'이 성인인지 테스트합니다.
// The condition has to return a boolean
function condition (human) {
return human.age >= 18
}
var arr = [{
name: 'Thomas',
age: 19},{
name: 'Noé',
age: 17},{
name: 'Luc',
age: 20}]
console.log(arr.every(condition))
// Should output false
그러나 some() 메서드는 하나 이상의 요소가 테스트를 통과하면 true를 반환합니다.
필터
필터 메서드는 조건을 확인하는 모든 요소가 포함된 새 배열을 만들고 반환합니다.
조건은 함수입니다.
다음 예제는 성인으로 고유하게 구성된 배열을 반환합니다.
function condition (human) {
return human.age >= 18
}
var arr = [{
name: 'Thomas',
age: 19},{
name: 'Noé',
age: 17},{
name: 'Luc',
age: 20}]
console.log(arr.filter(condition))
// Returns Thomas and Luc
찾다
find() 메서드는 조건을 확인하는 배열의 첫 번째 요소를 반환합니다.
그렇지 않고 요소를 확인하지 않으면 find()는 '정의되지 않음'을 반환합니다.
평소와 같이 조건은 함수입니다.
이 예에서는 첫 번째 성인을 반환합니다.
function condition (human) {
return human.age >= 18
}
var arr = [{
name: 'Thomas',
age: 19},{
name: 'Noé',
age: 17},{
name: 'Luc',
age: 20}]
console.log(arr.find(condition))
// Should returns Thomas
지도
map 메서드는 호출 배열의 각 요소에 대해 실행된 함수의 반환 값으로 새 배열을 만듭니다.
이 예에서는 각 사람의 나이를 증가시킵니다.
var arr = [{
name: 'Thomas',
age: 19},{
name: 'Noé',
age: 17},{
name: 'Luc',
age: 20}]
console.log(arr.map(function(element){
element.age += 1
return element
}))
줄이다
마지막으로, reduce() 메서드는 저에게 가장 까다로운 메서드입니다.
reduce 메서드는 배열의 각 값에 대해 제공된 함수를 실행하여 배열을 단일 값으로 줄입니다.
각 요소에 대해 반환 값은 모든 반복에서 사용할 수 있는 '누적기'에 저장됩니다.
reduce() 메서드의 최종 반환 값은 이 누산기입니다.
누산기는 메서드 호출에서 초기화되어야 합니다.
또한 리듀서 함수는 두 개의 다른 매개변수를 사용할 수 있습니다.
// The condition has to return a boolean
function condition (human) {
return human.age >= 18
}
var arr = [{
name: 'Thomas',
age: 19},{
name: 'Noé',
age: 17},{
name: 'Luc',
age: 20}]
console.log(arr.every(condition))
// Should output false
function condition (human) {
return human.age >= 18
}
var arr = [{
name: 'Thomas',
age: 19},{
name: 'Noé',
age: 17},{
name: 'Luc',
age: 20}]
console.log(arr.filter(condition))
// Returns Thomas and Luc
function condition (human) {
return human.age >= 18
}
var arr = [{
name: 'Thomas',
age: 19},{
name: 'Noé',
age: 17},{
name: 'Luc',
age: 20}]
console.log(arr.find(condition))
// Should returns Thomas
var arr = [{
name: 'Thomas',
age: 19},{
name: 'Noé',
age: 17},{
name: 'Luc',
age: 20}]
console.log(arr.map(function(element){
element.age += 1
return element
}))
이 예에서는 연령의 합계를 반환합니다.
function reducer (accumulator,element) {
return accumulator + element.age
}
var arr = [{
name: 'Thomas',
age: 19},{
name: 'Noé',
age: 17},{
name: 'Luc',
age: 20}]
console.log(arr.reduce(reducer,0))
이전 예제는 매우 간단하지만 reduce() 메서드는 정말 강력합니다. 이를 통해 많은 것을 얻을 수 있습니다.
결론
읽어주셔서 감사합니다. 질문이 있으면 질문하세요! 🧐
Reference
이 문제에 관하여(JavaScript의 배열 조작 🧐), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/thomasaudo/advanced-array-manipulation-in-javascript--fhi
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(JavaScript의 배열 조작 🧐), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/thomasaudo/advanced-array-manipulation-in-javascript--fhi텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)