728x90
Array filter 메서드는 조건을 만족하는 요소만 모아서 새로운 배열을 반환한다.
const arr = [1, 5, 8, 10, 12, 15, 16, 20];
/***
* Array.prototype.filter() 메서드는 조건을 만족하는 요소만 모아서 새로운 배열을 리턴
*/
const rs1 = arr.filter(x => x % 5 == 0); // 조건 : 5의 배수
console.log(rs1);
// filter 메서드 대신 find 메서드를 사용하면 어떤 결과를 반환할까?
console.log(arr.find(x => x % 5 == 0)); // find 메서드는 단 하나의 요소만 리턴
console.log(arr.filter((item) => item >= 12)); // 조건 : 12보다 큰 수
const users = [
{ name: '지민', salary : 7000000 },
{ name: '철수', salary : 2500000 },
{ name: '재석', salary : 3200000 },
{ name: '종민', salary : 4600000 },
];
testJson = JSON.stringify(users);
const newJson = JSON.parse(testJson).filter(function(item){
console.log(item);
return item.name == "종민";
});
console.log(newJson);
// 화살표 함수로 조건을 쉽게 사용 가능
const newUser = users.filter(item => item.name == "종민");
console.log(newUser);
const users2 = {
class : "1-1",
subject : "English",
scores : [
{ name : "길동", score : 60 },
{ name : "재섭", score : 80 },
{ name : "현수", score : 100 },
{ name : "희성", score : 70 },
{ name : "광수", score : 40 },
{ name : "혜리", score : 90 }
]
};
// 점수가 80점 이상인 학생들
const rs3 = users2.scores.filter(item => item.score >= 80);
console.log(rs3);
// 점수가 70 ~ 90 사이인 학생들
const rs4 = users2.scores.filter(item => item.score >= 70 && item.score <= 90);
console.log(rs4);
|
728x90
'React > morden javascript' 카테고리의 다른 글
[ES2020] optional chaining (0) | 2022.12.28 |
---|---|
[ES6] 비구조화 할당(destructuring assignment) (0) | 2022.12.28 |
Javascript Array.map 사용 예제 (2) | 2022.12.27 |
카카오 맵 장소 검색 구현 방법 (0) | 2022.12.19 |
[Javascript] 정규표현식 (0) | 2022.10.08 |