이 JSON에서 일치하는 키워드를 찾으려고합니다. 예를 들어 제목, 번호 또는 사용자 배열에 sam이 포함 된 객체를 원합니다.신속한 JSON 검색
[
{
"title":"List of students",
"number": "12 stu",
"users":[{
"id": 12,
"name":"tom"
},
{
"id": 1,
"name":"sam"
}]
},
{
"title":"List of tutors",
"number": "2 tut",
"users":[{
"id": 1,
"name":"John"
},
{
"id": 1,
"name":"Sam"
}]
}
]
내 코드는 제목과 번호 만 검색 할 수 있지만 각 사용자는 검색 할 수 없습니다.
func searchBar(_ searchBar: UISearchBar, textDidChange searchText: String) {
arrResf = arrRes.filter({ (item) -> Bool in
let heading: NSString = ((item["title"]! as? String)! + (item["number"]! as! String)) as NSString
return (heading.range(of: searchText, options: NSString.CompareOptions.caseInsensitive).location) != NSNotFound
})
self.tableView.reloadData()
}
사용자를 포함하도록 검색을 어떻게 확장합니까?
감사합니다.
이 코드는 상당히 비효율적입니다. 예를 들어 제목이 일치하면 번호를 확인하거나 사용자를 통해 스캔 할 필요가 없습니다. 검색의 경우 데이터의 양에 따라 이러한 비 효율성이 현저하게 나타날 수 있습니다. – rmaddy