좀 더 우아한 방법이 있는지 궁금합니다. 나는이 솔루션을 함께했다자바 스크립트 : 문자열 배열로 객체의 배열을 필터링하십시오.
var kpis = ["kpi03", "kpi02"];
다른 배열에 일치하는 모든 개체를 반환하려면 id
재산 필터링하려면 지금
a = [
{
"id": "kpi02",
"value": 10
},
{
"id": "kpi02",
"value": 30
},
{
"id": "kpi02",
"value": 11
},
{
"id": "kpi02",
"value": 33
},
{
"id": "kpi03",
"value": 1
},
{
"id": "kpi03",
"value": 0.5
},
{
"id": "kpi04",
"value": 0.5
}
]
:이 같은 객체의 배열이 있다고 가정 :
var b = [];
for (j in kpis) {
for (i in a) {
if (a[i].id == kpis[j]) {
b.push(a[i]);
}
}
}
는 R에서오고, 이것은 filter
프로토 타입과는 그 어떤 방법이 조금 복잡하게 보인다? 이 문자열과 같이 하나의 문자열 대신 비교할 문자열 배열이 있습니다.
var b = a.filter(function(item){return (item.id == "kpi03");});
감사합니다.
빠른 답변과 예를 들어 주셔서 감사합니다. 거기에 더 우아한 해결책이 있어야한다는 것을 알았습니다 :) – Schw4rz