{
"rResponse":{
"rDetailsList":[
{
"rDate":"April 01, 2018",
"rList":[
{
"aName":"GOKQG C HQFUDHFPX",
"aNumber":"P3799838628"
},
{
"aName":"IGNDPJR D EKYJYC",
"aNumber":"P3899820579"
}
]
},
{
"rDate":"Jan 01, 2018",
"rList":[
{
"aName":"",
"aNumber":"A39A4035073"
},
{
"aName":"YVTLW K SIGLC",
"aNumber":"A270M040558"
}
]
}
]
}
} I 검색 문자열에 기초하여 데이터를 필터링하기위한 상기 함수를 사용하고스크립트
getFilteredResult(rDetails, searchText) {
const regex = new RegExp(searchText, 'i');
let result= rDetails.filter(a =>
a.rList.some(rItem=>
(rItem.aName.search(regex) > -1) ||
(rItem.aNumber.search(regex) > -1)
))
console.log(result,"filteredResults")
return result;
}
let result=getFilteredResult(rResponse.rDetailsList, "A270M040558"):
검색 문자열을 사용하여 오브젝트의 중첩 배열 필터링.
개체의 구조체를 유지하면서 개체의 중첩 된 배열을 필터링하려는 경우 위의 함수의 출력은 다음과 같습니다. 여기서 검색 텍스트와 일치하는 개체를 하나만 가져 오는 대신 목록의 모든 개체를 가져옵니다.
{
"rResponse": {
"rDetailsList": [{
"rDate": "Jan 01, 2018",
"rList": [{
"aName": "",
"aNumber": "A39A4035073"
},
{
"aName": "YVTLW K SIGLC",
"aNumber": "A270M040558"
}
]
}]
}
은}
예상 출력
{
"rResponse": {
"rDetailsList": [{
"rDate": "Jan 01, 2018",
"rList": [
{
"aName": "YVTLW K SIGLC",
"aNumber": "A270M040558"
}
]
}]
}
}
입니다 16,
당신이 당신을 줄 loadsh.js의 방법을 찾을 사용 할 수 있음을 원하는 결과. 자세한 내용은 https://lodash.com/docs/4.17.4#find –