2017-04-17 41 views
-3

在搜索時間我得到了與具有不同城市名稱的相同_id的結果。例如爲:比較我在結果中得到的相同ID

[ { _id:1, 城市: 「班加羅爾」 },{ _id :1, 城市: 「奈」 } ];

代替在獨立的記錄表示的顯示它們在像一個記錄:

[ { _id:1, 城市: 「班加羅爾」, 城市: 「奈」 }

];

在此先感謝。

+0

請[編輯]你的問題澄清你的初始數據的格式是什麼。它是一個由分號分隔的記錄或者一組對象或其他東西的字符串嗎?顯示JS的相關行。 – nnnnnn

+0

請以JSON格式提供正確的數據。您當前的數據將會引發語法錯誤... –

回答

0

與_id一些查找查詢如果您收到的結果是1,可能是陣列狀

let array = [{ "city_id": { "_id": "58b7b12380c88f0f5495390b", "city": "Chennai" }, "country_id": { "_id": "58b7b10180c88f0f54953909", "country": "India" }, }, { "city_id": { "_id": "58f22ecca426d6bc1c8b46df", "city": "Mumbai" }, "country_id": { "_id": "58b7b10180c88f0f54953909", "country": "India" }}]; 

let country_ids = array.map((o)=> o.country_id) 

// Remove duplicate ids from country_ids 

let results = []; 

country_ids.map((country) => { 
    results.push({ 
     country_id: country, 
     cities: array.filter((obj)=> obj.country_id._id === country._id).map((y) => y.city_id) 
    }) 
}) 

console.log(results); 
+0

我需要不傳遞任何輸入數據,過濾所有相同的_id,然後將城市名稱推送到該特定ID –

+0

您是否擁有可能具有相同_id值的多個對象的較大數組?並想過濾相同的數組與ids?還有一個我認爲{_id:1,city:「Bangalore」,city:「Chennai」}不是有效的對象,因爲對象中不應該有多次相同的鍵。或者這是必需的? – Harish

+0

[ { 「city_id」:{ 「_id」: 「58b7b12380c88f0f5495390b」, 「城市」: 「金奈」 }, 「COUNTRY_ID」:{ 「_id」: 「58b7b10180c88f0f54953909」, 「國家」 : 「印度」 }, }, { 「city_id」:{ 「_id」: 「58f22ecca426d6bc1c8b46df」, 「城市」: 「孟買」 }, 「COUNTRY_ID」:{ 「_id 「:」58b7b10180c88f0f54953909「, 「國」:「印度」 }, } ] –

相關問題