我已經用NodeJS構建了一個應用程序,我們有一個上傳聯繫表和合並聯系人的功能。在javascript中搜索和合並對象屬性的有效方法算法
有2個匹配條件
聯繫,應根據電話號碼或電子郵件地址進行合併。如果 任何電話號碼或電子郵件應該匹配,那麼聯繫人應該將 視爲現有/重複聯繫人並與搜索 合併對象。
CSV聯繫人在用戶的所有數據庫聯繫人中進行比較。
對於如:
如果用戶在他的DB 1000個聯繫人,現在他可以上傳 5000通過CSV接觸之後每CSV接觸行對象應與數據庫中的聯繫人對象匹配 。
它遍歷總數1000(聯繫 行數據庫)* 5000(聯繫CSV數據行)= 5000000總遍歷數。
在我的應用程序中實現的這個時候,它非常昂貴。我希望有效地搜索和合並聯系人,而不必檢查重複的聯繫人條件。
場景:
有一個場景我張貼在這裏。
手機通訊錄 [{ID:1,名稱: '凱爾布魯克',電話:[1234567890]}]
CSV: [{名稱:'凱爾布魯克斯,電子郵件:['[email protected]','[email protected]'],電話:[1234567890]} {姓名:nulll,電子郵件:['[email protected]'],電話:[1234567890,0987654321] }]
最終結果: {名稱:'凱爾布魯克斯,電子郵件:[ '[email protected]', '[email protected]'],電話:1234567890,0987654321]}]
我做了一個代碼可能會收取費用。 154589 ms來執行5000000總遍歷的代碼。
下面的代碼鏈接的評論我需要發佈整個代碼,否則它不可能得到有關代碼的想法。
`https://jsfiddle.net/dipakchavda2912/eua1truj/`
*我做了一個代碼,可能需要*,你能告訴我們嗎? – Rajesh
你正在使用哪個數據庫? – gurvinder372
代碼請..... –