我想對集合使用下劃線方法「發現」,但它不給我我希望的結果用下劃線法「查找」:中的骨幹收集
我有沒有一個基本模型默認和默認集合。我集合中的模型只有兩個屬性:tranId(guid作爲字符串)和perform(執行的函數)。
我試圖找到我傳遞給它tranId匹配的集合中的項目...
var tranId = "1a2b3c";
var found = _.find(myCollection, function(item){
return item.tranId === tranId;
});
發現總是不確定的,即使調試器顯示我的收藏呢,確實有tranId與我的變量相匹配的項目。我無法在return語句中設置斷點來查看item.tranId等同於什麼。我也試過這個...
var found = _.find(myCollection, function(item){
return item.get('tranId') === tranId;
});
但是,同樣的事情。 '找到'總是未定義的。我在這裏做錯了什麼?
謝謝,這工作。爲什麼Underscore方法不以相同的方式工作?還應該注意的是,tranId是一個字符串,而不是一個數字。所以,類型轉換不是必需的。 – 2012-07-16 15:05:20
@JoelCDoyle如果你想直接使用下劃線方法可能會更好地使用myCollection.models,因爲它是原始數據你的模型http://backbonejs.org/#Collection-models - 類型轉換是爲了防止嚴格的數據分析比較的問題。 :D – 2012-07-16 15:32:07
很酷。非常感謝! – 2012-07-16 20:15:32