Article View: pl.comp.lang.javascript
Article #50906Filtrowanie obiektu JSON-a
From: Peter May
Date: Sun, 09 Oct 2011 13:17
Date: Sun, 09 Oct 2011 13:17
65 lines
2129 bytes
2129 bytes
Mam taki przykładowy obiekt JSON-a:
{
"result": "1",
"get": [
{
"type": "test",
"more": {
"type": "test1",
},
"more2": {
"qwe": "test2",
"email": null,
},
"more3": null
},
{
"type": "best",
"more": {
"type": "test11",
},
"more2": {
"qwe": "test22",
"email": null,
},
"more3": null
},
]
}
Potrzebuję przefiltrować wszystkie obiekty w tablicy "get" i zostawić
tylko te obiekty w tablicy, które będą zawierały dowolny klucz i wartość
pasująca do poszukiwanego string-a.
Czyli jeśliby przefiltrować wszystkie obiekty w tablicy "get" i zostawić
te, w których jest dowolny klucz którego wartość będzie zawierać string
"test22", to wynik byłby taki:
{
"result": "1",
"get": [
{
"type": "best",
"more": {
"type": "test11",
},
"more2": {
"qwe": "test22",
"email": null,
},
"more3": null
},
]
}
Wiem, że mógłbym to zrobić pętlami for-in, ale może jest jakiś inny
sposób, by prze-iterować się po całym obiekcie i sprawdzić czy jakiś
klucz nie zawiera w swojej wartości określonego stringa?
No i inna sprawa, że jeśli obiekt będzie jeszcze bardziej zagnieżdżony,
to znów musiałbym dodać kolejną pętlę for-in. A wolałbym mieć jakieś
bardziej uniwersalne rozwiązanie.
--
Peter
Technical Details
Message-ID:
<j6s6st$skj$1@news.onet.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!.POSTED!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!news.onet.pl!.POSTED!not-for-mail From: Peter May <peter.may@onet.pl> Newsgroups: pl.comp.lang.javascript Subject: Filtrowanie obiektu JSON-a Date: Sun, 09 Oct 2011 15:17:13 +0200 Organization: http://onet.pl Lines: 65 Message-ID: <j6s6st$skj$1@news.onet.pl> NNTP-Posting-Host: ip-79-175-205-52.cable.smsnet.pl Mime-Version: 1.0 X-Trace: news.onet.pl 1318166237 29331 79.175.205.52 (9 Oct 2011 13:17:17 GMT) X-Complaints-To: niusy@onet.pl NNTP-Posting-Date: Sun, 9 Oct 2011 13:17:17 +0000 (UTC) User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:7.0.1) Gecko/20110929 Thunderbird/7.0.1 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit