배열에서 특정 조건을 갖고 있는 요소를 찾고자 할때 사용
const fruits=[{
name:"apple",price:"200"},
{name:"banana",price:"300"},
{name:"cherry",price:"400"}]
위 처럼 fruit라는 배열에서 price가 300인 과일을 찾고 싶다면?
const item=fruits.find((fruit)=>{
if(fruits.price == 300){
return true
}else{
return false
}
})
여기서 만약 특정 index를 가지고 있는 원소를 구하고 싶다면?
const item=fruits.find((fruit,index)=>{
if(fruits.price == 300 && index == 2){
return true
}else{
return false
}
})
//출력: {name:"cherry",price:"400"}
말 그대로 특정 index를 출력하고자 할때 사용
const item=fruits.findIndex((fruit,index)=>{
if(fruits.price == 300){
return true
}else{
return false
}
})
//출력: {name:"banana",price:"400"}
배열에서 특정 조건을 만족하는 요소가 1개 이상일 경우 true 반환
const doesExist=fruits.some((fruit)=>{
if(fruit.price > 600){
return true
}else{
return false
}
})
배열안에 있는 모든 요소가 특정 조건을 만족하고 있는지? 확인
const isOver=fruits.every((fruit)=>{
if(fruit.price > 400){
return true;
}else{
return false
}
})
배열에서 특정 조건을 만족하는 요소만 쏘옥 빼서 새로운 배열을 만듬.
const arr=fruits.filter((item)=>{
if(fruit.price > 200){
return true
}else{
return false
}
})
이때, filter 함수는 원본 배열을 변경하는게 아니라 아예 새로운 배열을 만드는 것임!!
원본 배열의 요소들을 변환해서 새로운 배열로 만들어 줄 수 있음.
const fruits=[{
name:"🍎",price:"300"},
{name:"🍌",price:"200}]
const newArr = fruits.map((item)=>{
return `${fruits.name}: ${fruits.price}원`;
})
console.log(newArr);
위 코드를 실행시키면 fruits 배열안에 있는 요소들을 변환해서
[🍎 : 300원 , 🍌 : 200원] 이 출력 된다 !