因此編寫一個使用大量用戶生成數據的應用程序。在大多數情況下,我只是使用mongodb id來查找它是什麼。所以這個應用程序的典型例子是類別的圖標。它們被存儲爲一個數據集,它通過應用程序從api傳遞給mongodb,然後傳遞給api,然後傳遞給控制器,而且我經常需要做一個簡單的查找。假設類別如下所示:用於在JSON對象中進行數據查找的設計模式
[
{
"_id":"55dc79efed0fcf4a58d4a68d",
"categoryName":"Sport",
"categoryDescription":"Sport and more sports",
"categoryIcon":"55dc79b2ed0fcf4a58d4a68c",
"__v":0
}
]
categoryIcon是另一個表的引用,在工廠加載時,數據如下所示。
[
{
"_id":"55dc79b2ed0fcf4a58d4a68c",
"iconName":"Sport",
"cssString":"fa fa-futbol-o",
"__v":0
},
{
"_id":"55dc79b2ed0fcf4a58d4a69d",
"iconName":"Travel",
"cssString":
"fa fa-plane",
"__v":0
}
]
所以我一直在解決這個的方法是沿
for (var i in icons){
if(icons[i]._id == category.categoryIcon){
console.log("Found the Icon");
category.cssString=icons[i].cssString;
}
}
容易,比較快的線條,但似乎有點浪費,所以是有一個平滑的方式。如果有人想測試,做一個簡單的jfiddle。
https://jsfiddle.net/vrghost/9tw4btyo/1/
所以按照你的答案中,選擇是要麼花費大量的時間faffing有關訂購你的清單,並從發送前重建數據API,或者只是用for循環。 (當我閱讀我的答案時,我意識到這聽起來有點粗魯,這不是我的意圖,我非常感謝您的回答,並且我希望討論進行:)) – vrghost
我已更新答案以反映替代方法,如果您可以改變API。 –