我試圖使用Underscore.js libarary的findWhere函數來有效地從node.js服務器上的數組中找到一個對象,我無法理解爲什麼它總是返回undefined。下劃線_.find當它存在時找不到數組中的元素
我使用節點控制檯測試了函數,並且該對象definetely包含具有指定鍵的對象,但在使用findWhere時仍然沒有返回任何內容。
在這裏,我保證爲我尋找findWhere中我希望能有返回的對象確實相等的匹配值的「夾具」鍵的值:
「55785f4e38bd12511018145d」 ==預測[0] .fixture;
真正
當檢查數組中舉行了什麼樣的價值觀正在搜索的findWhere我確認值確實存在:
預測
[{夾具: '55785f4e38bd12511018145d' }]
檢查我希望返回的值rned:
預測[0] .fixture
'55785f4e38bd12511018145d'
運行其返回未定義findWhere查詢:
變種foundPrediction = underscore.findWhere(預測, {fixture:'55785f4e38bd12511018145d'});
不確定
我能想到的唯一原因是這東西有可能是與鑄造,或者一個「===」返回函數內假的,但有什麼辦法,我可以得到findWhere返回所需的對象,或者我將不得不訴諸手動搜索使用for循環?
在此先感謝!