1
我想知道是否有改善這一功能的優雅方式:使用jQuery grep()查找匹配的最簡潔方法?
function findById(id) {
var items = [
{ Id: 1, Value: 'My value 1' },
{ Id: 2, Value: 'My value 2' }
];
var result = $.grep(items, function (obj) { return obj.Id === id; });
return result.length > 0 ? result[0] : null;
}
特別是,我寧願它看起來是這樣的:
function findById(id) {
var items = [
{ Id: 1, Value: 'My value 1' },
{ Id: 2, Value: 'My value 2' }
];
return $.grep(items, function (obj) { return obj.Id === id; })[0] || null;
}
這顯然是一個很大的一堆失敗,但這個想法是,也許有一個更清晰的寫作功能的方式。沒有什麼大不了的,但我想我會寫這個以防萬一我失去了一些東西。
[編輯]正如指出的那樣,理想的代碼工作就好了。我錯誤地認爲訪問一個空數組的第一個元素會拋出一個錯誤,但是它會返回undefined。謝謝大家!
你試過了嗎?它應該工作正常。問題在哪裏? – 2013-03-18 16:03:45