다른 객체 배열을 사용하여 객체 배열 필터링
현재 작업은 다음을 기반으로 객체 배열(myArray)을 필터링하는 것입니다. 두 번째 객체 배열(myFilter)은 userid 및 projectid 속성이 myFilter의 속성과 일치하는 myArray의 객체만 반환합니다.
해결책
이를 달성하기 위해 필터와 일부 방법의 조합. 필터 메소드는 myArray의 각 요소를 반복하고 주어진 조건을 통과하는 요소만 포함하는 새 배열을 반환합니다. 이 경우 요소의 userid 및 projectid가 myFilter의 userid 및 projectid 쌍 중 하나와 일치하면 조건이 충족됩니다.
some 메소드는 필터 조건 내에서 myFilter의 요소 중 하나라도 충족하는지 확인하는 데 사용됩니다. 지정된 기준. 조건은 현재 myFilter 요소의 userid 및 projectid 속성이 현재 myArray 요소의 속성과 동일한지 확인합니다. 일치하는 항목이 발견되면 some 메소드는 조건이 충족되고 해당 요소가 필터링된 배열에 포함되어야 함을 나타내는 true를 반환합니다.
코드 예
<code class="js">const myArray = [ { userid: "100", projectid: "10", rowid: "0" }, { userid: "101", projectid: "11", rowid: "1"}, { userid: "102", projectid: "12", rowid: "2" }, { userid: "103", projectid: "13", rowid: "3" }, { userid: "101", projectid: "10", rowid: "4" } ]; const myFilter = [ { userid: "101", projectid: "11" }, { userid: "102", projectid: "12" }, { userid: "103", projectid: "11"} ]; const myArrayFiltered = myArray.filter((el) => { return myFilter.some((f) => { return f.userid === el.userid && f.projectid === el.projectid; }); }); console.log(myArrayFiltered);</code>
출력
[ { userid: "101", projectid: "11", rowid: "1" }, { userid: "102", projectid: "12", rowid: "2" } ]
위 내용은 다른 배열의 일치하는 속성을 기반으로 개체 배열을 필터링하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!